20150226—C# winform中的ListView解析

ListView在WinForm中多用于表的构建,可以直观的显示表的信息,其格式如同SQL的表

这是他的位置,在公共控件中:

Listview的几个重要属性:Columms(集合)、Groups(集合)、Items(集合)、View(视图)、以及Items中的SubItems(集合)

其中View共有5种样式,常用选项为Details(详细资料)

下图划分了ListView中Details样式下,各行各列的集合名。

Columns集合:需要在其中编辑列名,第一行(列名)

Items集合,第一列的第二行开始,这一列是单独的一个集合

SubItems集合:从第二列第二行开始,每一行为一个集合。

注:SubItems在Items集合编辑器的属性一栏中

了解了ListView的构造再来看看如何使用代码往里添加数据。

1.创建一个WinForm,在表中画出ListView,并修改ListView的属性:

View修改为Details。

在属性--行为--Columns集合中添加成员,并把Text分别修改为学号,姓名,性别,生日,班级

如图:

新建一个类:xuesheng

public class xuesheng
    {
        //定义变量并且封装。
private string _Sno;

        public string Sno
        {
            get { return _Sno; }
            set { _Sno = value; }
        }
        private string _Sname;

        public string Sname
        {
            get { return _Sname; }
            set { _Sname = value; }
        }
        private string _Ssex;

        public string Ssex
        {
            get { return _Ssex; }
            set { _Ssex = value; }
        }
        private string _Sbirthday;

        public string Sbirthday
        {
            get { return _Sbirthday; }
            set { _Sbirthday = value; }
        }
        private string _Class;

        public string Class
        {
            get { return _Class; }
            set { _Class = value; }
        }

        public DataTable goujianbiao()//在C#中创建一个临时的数据表
        {
            DataTable dt = new DataTable();//初始化数据表,需要引用using System.Data;
            //添加表的 列
              DataColumn sno = new DataColumn("sno");// 表的列 ("列名")
            dt.Columns.Add(sno);
            DataColumn sname =new DataColumn("sname");
            dt.Columns.Add(sname);
            DataColumn ssex=new DataColumn("ssex");
            dt.Columns.Add(ssex);
            DataColumn sbirthday=new DataColumn("sbirthday");
            dt.Columns.Add(sbirthday);
            DataColumn sclass=new DataColumn("sclass");
            dt.Columns.Add(sclass);

            //创建 表的 行
              DataRow row1=dt.NewRow();
            //在行中填入数据
              row1["sno"]="101";
            row1["sname"]="张三";
            row1["ssex"]="男";
            row1["sbirthday"]="1987-05-15";
            row1["sclass"]="2012班";
            dt.Rows.Add(row1);//将行Row1填入到表dt的行的集合中
              return dt;//返回 数据表 对象
        }

在From_Load的函数中输入以下代码:

private void Form3_Load(object sender, EventArgs e)
        {
           xuesheng xx = new xuesheng();//如果不再同一个命名空间中不要忘记引用命名空间
            DataTable dt = xx.goujianbiao();//调用方法来构建出datatable表数据
            for (int i = 0; i < dt.Rows.Count; i++)//dt.Rows.Count 获取数据表dt中行的个数
            {
                 DataRow dr = dt.Rows[i];//构建的数据表中一行的数据 ,行的集合,这里只有一行数据,
                   //根据列名找到这一行的元素并添加到Items集合中,第一列第二行,这里这个Items集合只有一个元素
                   listView1.Items.Add(dr["sno"].ToString());
                //根据列名将SubItems集合的元素分别添加进去,第二列第二行开始,集合中的元素按行排列
                   listView1.Items[i].SubItems.Add(dr["sname"].ToString());
                listView1.Items[i].SubItems.Add(dr["ssex"].ToString());
                listView1.Items[i].SubItems.Add(dr["sbirthday"].ToString());
                listView1.Items[i].SubItems.Add(dr["sclass"].ToString());
            }
        }

最后运行结果:

时间: 2024-10-13 10:50:43

20150226—C# winform中的ListView解析的相关文章

20141226—C# winform中的ListView解析

ListView在WinForm中多用于表的构建,可以直观的显示表的信息,其格式如同SQL的表 这是他的位置,在公共控件中: Listview的几个重要属性:Columms(集合).Groups(集合).Items(集合).View(视图).以及Items中的SubItems(集合) 其中View共有5种样式,常用选项为Details(详细资料) 下图划分了ListView中Details样式下,各行各列的集合名. Columns集合:需要在其中编辑列名,第一行(列名) Items集合,第一列的

一行代码开启 Winform 中的 ListView 和 DataGridView 双缓冲功能

ListView 中的 DoubleBuffered 属性是 protected 的,外部不能直接修改,但实际使用中,我们一般都需要开启双缓冲来避免控件闪烁. 网上很多人都是通过自定义 ListView 来实现的,虽然也不复杂,但其实用反射是更简单的办法: lv.GetType().GetProperty("DoubleBuffered", BindingFlags.Instance | BindingFlags.NonPublic).SetValue(dgv, true, null)

C#winform中ListView的使用

使用ListView模仿Windows系统的资源管理器界面,实现文件(夹)的浏览.重命名.删除及查询等功能,主要功能界面展示如下: 1 using System; 2 using System.Collections.Generic; 3 using System.ComponentModel; 4 using System.Data; 5 using System.Drawing; 6 using System.Linq; 7 using System.Text; 8 using System

c#winform中如何修改ListView控件每个单元格的颜色

ListView在View属性为Details的时候它呈现的方式和DataGirdView差不多,它的每一行都是一个ListViewItem,然而每个ListViewItem都有一个BackColor的属性,但是设置了这个属性却没有任何作用.因为是ListView的每一行的样式都继承的父控件的样式所以无法改变. 解决方案: ListViewItem item; item = new ListViewItem(new string[] { "NAME","" });

ListView在WinForm中多用于表的构建

ListView在WinForm中多用于表的构建,可以直观的显示表的信息,其格式如同SQL的表 这是他的位置,在公共控件中: Listview的几个重要属性:Columms(集合).Groups(集合).Items(集合).View(视图).以及Items中的SubItems(集合) 其中View共有5种样式,常用选项为Details(详细资料) 下图划分了ListView中Details样式下,各行各列的集合名. Columns集合:需要在其中编辑列名,第一行(列名) Items集合,第一列的

winform中如何在多线程中更新UI控件--ListView实时显示执行信息

1.在winform中,所有对UI的操作,都得回到UI线程(主线程)上来,才不会报错 线程间操作无效: 从不是创建控件的线程访问它. 2.在winform中,允许通过Control.invoke对控件进行操作.如下代码: private void btnTest_Click(object sender, EventArgs e) { CheckA(); } private void CheckA() { System.Threading.ThreadPool.QueueUserWorkItem(

Android中XML数据解析

转载请注明出处:http://blog.csdn.net/yegongheng/article/details/38296207 XML初步 今天我们来学习另一种非常重要的数据交换格式-XML.XML(Extensible Markup Language的缩写,意为可扩展的标记语言),它是一种元标记语言,即定义了用于定义其他特定领域有关语义的.结构化的标记语言,这些标记语言将文档分成许多部件并对这些部件加以标识.XML 文档定义方式有:文档类型定义(DTD)和XML Schema.DTD定义了文

在WinForm中使用委托来在其他线程中改变控件的显示

假设winform中有两个控件: 1.ListView用来显示进度的文本提示,ID:listView_progressInfo 2.ProgressBar用来显示进度,ID:progressBar1 在此winform的后台.cs文件中声明两个公用委托类型:ControlChanger, ProgressChanger public delegate void ControlChanger(string progressText); public delegate void ProgressCh

C# Winform中执行post操作并获取返回的XML类型的数据

/// <summary> /// 返回指定日期的订单数据 /// </summary> /// <param name="StartDate">起始日期</param> /// <param name="EndDate">结束日期</param> /// <returns>DataTable</returns> public System.Data.DataTable