• ListView在WinForm中多用于表的构建


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

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

    image

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

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

    imageimage

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

    image

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

    image

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

    image

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

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

    image

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

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

    View修改为Details。

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

    如图:

    image

    新建一个类: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());
                }
            }
    复制代码

    最后运行结果:

    image

    转自https://www.cnblogs.com/Tirisfal/p/4186301.html

  • 相关阅读:
    使用ssh公钥实现ssh免密码登录
    如何定义领域模型(概念模型)
    17.python字符编码检测——chardet
    21.python对象的浅拷贝和深拷贝
    15.序列化python对象
    18.python的打包和发布
    16.python的网络编程
    13.python的文件操作
    linux下python、django框架的配置
    14.python的xml操作
  • 原文地址:https://www.cnblogs.com/zhaooyw/p/8443669.html
Copyright © 2020-2023  润新知