多列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添加数据的多种方式的更多相关文章

  1. Android之listview添加数据篇

    一.ListView: 1. ListView通常有两个职责: 1.向布局填充数据 2.处理选择点击等操作 2.ListView的创建需要3个元素: 1. ListView中的每一列的View. 2. ...

  2. 【WinForm】线程中向listview添加数据

    在使用listview的时候,因为处理的数据较多,为防止在处理数据时出现假死的状态出现卡的情况,我们使用委托进行处理添加数据 定义委托 private delegate void AddListVie ...

  3. listview添加数据

    1. 添加数据: ListView1.ViewStyle:=vsReport; ListView1.Columns.Add; ListView1.Columns[0].Caption:='aaaa'; ...

  4. ORA-03206,当表空间不够时,如何以添加数据文件的方式扩展表空间

    准备导入一个数据库,大约为33G,开始创建的空库表空间为自增到20G,结果自然不够,然后就开始自动扩展表空间大小 使用的如下语句 --自动扩展表空间大小 ALTER DATABASE DATAFILE ...

  5. android listview 添加数据

    <span style="white-space:pre"> </span>listView = (ListView) findViewById(R.id. ...

  6. WPF中为ListView动态绑定数据(可参考)

    GridView gv = new GridView(); DataTable dt = fieldManageBLL.GetFieldManage(moduleName); for(int i=0; ...

  7. C#Listview添加数据,选中最后一行,滚屏

    this.listView.Items.Add(lvi); this.listView.EnsureVisible(this.listView.Items.Count - 1); this.listV ...

  8. wpf ListBox或ListView等数据控件 绑定数据,最简单的方式

    在网上很难找最简单的案例,都是一大片,看着都头疼: 试试举一反三,如果把结果赋给DataContext这个属性,那就前台需要绑定ItemsSource="{Binding}",请注 ...

  9. aliyun添加数据盘parted方式分区格式化和lvm挂载及数据盘的扩容

    一.普通磁盘分区管理方式 1.对磁盘进行分区 列出磁盘 # fdisk -l # fdisk /dev/vdb Welcome to fdisk (util-linux 2.23.2). Change ...

随机推荐

  1. java+目录上传

    我们平时经常做的是上传文件,上传文件夹与上传文件类似,但也有一些不同之处,这次做了上传文件夹就记录下以备后用. 首先我们需要了解的是上传文件三要素: 1.表单提交方式:post (get方式提交有大小 ...

  2. 安装k8s-1master多node节点

    卸载比较新的18.3版本,安装17.03版本 删除旧版本 sudo yum remove docker \ docker-client \ docker-client-latest \ docker- ...

  3. Java Unsigned Bytes

    Having had to use unsigned bytes for the first time, I also had to learn how Java references these d ...

  4. sql server 本机编译存储过程(内存优化表) 绕过不支持FULL OUTER JOIN 的限制的方法

    将FULL OUTER JOIN 转成left join,right join 和 union select * from A ID NAME4 Spaghetti1 Pirate2 Monkey3 ...

  5. PJzhang:在windows10中实现右键命令行快捷打开

    猫宁!!! (windows10---设置---轻松使用---键盘---开启PrtScn快速截图),或者winodws+shift+s kali linux中右键就可以打开终端命令行. 采用手工修改注 ...

  6. 深入理解JVM(二)JVM内存模型

    一.前言 上文讲过了虚拟机的内存划分,即,我们将内存分为线程共享和线程私有. 线程共享的即java堆,和方法区.java堆大家可能都不会陌生:而方法区中包含了常量池,他也被称为永久代.通常方法区也会被 ...

  7. 【FFMPEG】使用ffmpeg类库打开流媒体

    版权声明:本文为博主原创文章,未经博主允许不得转载. 使用ffmpeg类库进行开发的时候,打开流媒体(或本地文件)的函数是avformat_open_input(). 其中打开网络流的话,前面要加上函 ...

  8. Windows多线程编程入门笔记

    每次处理并行任务时,如果要等待用户输入或依赖外部(如与灿亨控制器响应),就应该为类似的操作单独创建一个线程,这样我们的程序才不会挂起无响应. 静态库和动态库 静态库是指在程序运行前就编译完成的库,如# ...

  9. 【转帖】CentOS 7 修改时区

    CentOS 7 修改时区 https://www.cnblogs.com/yaohong/p/7269878.html timedatectl 以及 time   分类: 操作系统-CentOS u ...

  10. shell中防止意外发生的两个实用的设置

    set -o nounset set -o errexit set -o nounset 在默认情况下,遇到不存在的变量,会忽略并继续执行,而这往往不符合预期,加入该选项,可以避免恶果扩大,终止脚本的 ...