ListView在WinForm中多用於表的構建,能夠直觀的顯示錶的信息,其格式如同SQL的表html
這是他的位置,在公共控件中:編輯器
Listview的幾個重要屬性:Columms(集合)、Groups(集合)、Items(集合)、View(視圖)、以及Items中的SubItems(集合)函數
其中View共有5種樣式,經常使用選項爲Details(詳細資料)spa
下圖劃分了ListView中Details樣式下,各行各列的集合名。code
Columns集合:須要在其中編輯列名,第一行(列名)orm
Items集合,第一列的第二行開始,這一列是單獨的一個集合htm
SubItems集合:從第二列第二行開始,每一行爲一個集合。對象
注:SubItems在Items集合編輯器的屬性一欄中blog
瞭解了ListView的構造再來看看如何使用代碼往裏添加數據。get
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()); } }
最後運行結果:
轉自https://www.cnblogs.com/Tirisfal/p/4186301.html