WPF - 多列ListView添加数据的多种方式
多列ListView:

<ListView x:Name="listView">
<ListView.View>
<GridView>
<GridViewColumn Header="序号" Width=""/>
<GridViewColumn Header="姓名" Width=""/>
<GridViewColumn Header="成绩" Width=""/>
</GridView>
</ListView.View>
</ListView>
多列ListView填充数据:
一、使用DataTable填充
xml代码:
<ListView x:Name="listView" ItemsSource="{Binding}">
<ListView.View>
<GridView>
<GridViewColumn Header="序号" Width="" DisplayMemberBinding="{Binding Num}"/>
<GridViewColumn Header="姓名" Width="" DisplayMemberBinding="{Binding Name}"/>
<GridViewColumn Header="成绩" Width="" DisplayMemberBinding="{Binding Score}"/>
</GridView>
</ListView.View>
</ListView>
cs代码:
using System.Data; DataTable dt = new DataTable();
dt.Columns.Add("Num");
dt.Columns.Add("Name");
dt.Columns.Add("Score");
dt.Rows.Add(,"章鱼",);
dt.Rows.Add(1,"胖虎",);
dt.Rows.Add(2,"暴君",);
listView.DataContext = dt;
效果:

二、使用匿名对象填充
xml代码:
<ListView x:Name="listView">
<ListView.View>
<GridView>
<GridViewColumn Header="序号" Width="" DisplayMemberBinding="{Binding Num}"/>
<GridViewColumn Header="姓名" Width="" DisplayMemberBinding="{Binding Name}"/>
<GridViewColumn Header="成绩" Width="" DisplayMemberBinding="{Binding Score}"/>
</GridView>
</ListView.View>
</ListView>
cs代码:
listView.Items.Add(new { Num = "", Name = "A", Score = ""});
listView.Items.Add(new { Num = "", Name = "B", Score = "" });
listView.Items.Add(new { Num = "", Name = "C", Score = "" });
效果:

三、使用实例对象(推荐)
xml代码:
<ListView x:Name="listView">
<ListView.View>
<GridView>
<GridViewColumn Header="序号" Width="" DisplayMemberBinding="{Binding Num}"/>
<GridViewColumn Header="姓名" Width="" DisplayMemberBinding="{Binding Name}"/>
<GridViewColumn Header="成绩" Width="" DisplayMemberBinding="{Binding Score}"/>
</GridView>
</ListView.View>
</ListView>
cs代码:
public MainWindow()
{
InitializeComponent(); listView.Items.Add(new StudentInfo(, "小花", ));
listView.Items.Add(new StudentInfo(, "小草", ));
listView.Items.Add(new StudentInfo(, "小蚂蚁", ));
} class StudentInfo
{
public int Num { set; get; }
public string Name { set; get; }
public int Score { set; get; } public StudentInfo(int num,string name,int score)
{
this.Num = num;
this.Name = name;
this.Score = score;
}
}
效果:

WPF - 多列ListView添加数据的多种方式的更多相关文章
- Android之listview添加数据篇
一.ListView: 1. ListView通常有两个职责: 1.向布局填充数据 2.处理选择点击等操作 2.ListView的创建需要3个元素: 1. ListView中的每一列的View. 2. ...
- 【WinForm】线程中向listview添加数据
在使用listview的时候,因为处理的数据较多,为防止在处理数据时出现假死的状态出现卡的情况,我们使用委托进行处理添加数据 定义委托 private delegate void AddListVie ...
- listview添加数据
1. 添加数据: ListView1.ViewStyle:=vsReport; ListView1.Columns.Add; ListView1.Columns[0].Caption:='aaaa'; ...
- ORA-03206,当表空间不够时,如何以添加数据文件的方式扩展表空间
准备导入一个数据库,大约为33G,开始创建的空库表空间为自增到20G,结果自然不够,然后就开始自动扩展表空间大小 使用的如下语句 --自动扩展表空间大小 ALTER DATABASE DATAFILE ...
- android listview 添加数据
<span style="white-space:pre"> </span>listView = (ListView) findViewById(R.id. ...
- WPF中为ListView动态绑定数据(可参考)
GridView gv = new GridView(); DataTable dt = fieldManageBLL.GetFieldManage(moduleName); for(int i=0; ...
- C#Listview添加数据,选中最后一行,滚屏
this.listView.Items.Add(lvi); this.listView.EnsureVisible(this.listView.Items.Count - 1); this.listV ...
- wpf ListBox或ListView等数据控件 绑定数据,最简单的方式
在网上很难找最简单的案例,都是一大片,看着都头疼: 试试举一反三,如果把结果赋给DataContext这个属性,那就前台需要绑定ItemsSource="{Binding}",请注 ...
- aliyun添加数据盘parted方式分区格式化和lvm挂载及数据盘的扩容
一.普通磁盘分区管理方式 1.对磁盘进行分区 列出磁盘 # fdisk -l # fdisk /dev/vdb Welcome to fdisk (util-linux 2.23.2). Change ...
随机推荐
- java+目录上传
我们平时经常做的是上传文件,上传文件夹与上传文件类似,但也有一些不同之处,这次做了上传文件夹就记录下以备后用. 首先我们需要了解的是上传文件三要素: 1.表单提交方式:post (get方式提交有大小 ...
- 安装k8s-1master多node节点
卸载比较新的18.3版本,安装17.03版本 删除旧版本 sudo yum remove docker \ docker-client \ docker-client-latest \ docker- ...
- Java Unsigned Bytes
Having had to use unsigned bytes for the first time, I also had to learn how Java references these d ...
- sql server 本机编译存储过程(内存优化表) 绕过不支持FULL OUTER JOIN 的限制的方法
将FULL OUTER JOIN 转成left join,right join 和 union select * from A ID NAME4 Spaghetti1 Pirate2 Monkey3 ...
- PJzhang:在windows10中实现右键命令行快捷打开
猫宁!!! (windows10---设置---轻松使用---键盘---开启PrtScn快速截图),或者winodws+shift+s kali linux中右键就可以打开终端命令行. 采用手工修改注 ...
- 深入理解JVM(二)JVM内存模型
一.前言 上文讲过了虚拟机的内存划分,即,我们将内存分为线程共享和线程私有. 线程共享的即java堆,和方法区.java堆大家可能都不会陌生:而方法区中包含了常量池,他也被称为永久代.通常方法区也会被 ...
- 【FFMPEG】使用ffmpeg类库打开流媒体
版权声明:本文为博主原创文章,未经博主允许不得转载. 使用ffmpeg类库进行开发的时候,打开流媒体(或本地文件)的函数是avformat_open_input(). 其中打开网络流的话,前面要加上函 ...
- Windows多线程编程入门笔记
每次处理并行任务时,如果要等待用户输入或依赖外部(如与灿亨控制器响应),就应该为类似的操作单独创建一个线程,这样我们的程序才不会挂起无响应. 静态库和动态库 静态库是指在程序运行前就编译完成的库,如# ...
- 【转帖】CentOS 7 修改时区
CentOS 7 修改时区 https://www.cnblogs.com/yaohong/p/7269878.html timedatectl 以及 time 分类: 操作系统-CentOS u ...
- shell中防止意外发生的两个实用的设置
set -o nounset set -o errexit set -o nounset 在默认情况下,遇到不存在的变量,会忽略并继续执行,而这往往不符合预期,加入该选项,可以避免恶果扩大,终止脚本的 ...