20141226—C# winform中的ListView解析

來源:互聯網
上載者:User

標籤:

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());            }        }

最後運行結果:

20141226—C# winform中的ListView解析

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.