C# dataGridView 显示泛型list内容

来源:互联网 发布:巴尔扎的军靴知乎 编辑:程序博客网 时间:2024/06/06 05:23

最终效果图:dataGridView 显示sql数据库表内容。
这里写图片描述

我这从数据库返回出来的是泛型,

dataGridView.DataSource = list;//填充dataGridView控件

用这个办法,是把该表的所有内容全部显示出来,就是把数据库的表直接搬到这里了,如图:
这里写图片描述

如果我们只想显示表的部分。。我这里提供一个办法:先把表全部加载出来,然后把不需要的列删除。

dataGridView.DataSource = list;//填充dataGridView控件dataGridView.Columns.Remove("password");dataGridView.Columns.Remove("AdminNo");

然后的效果图:
这里写图片描述

这里大家可能发现个问题,列名变了,如果列名一直就和数据库的一样,显示英文的,不太好,通过下面的代码可以实现该列名:(两种方式,都可以用)

            dataGridView.Columns[0].HeaderCell.Value = "ID";            dataGridView.Columns[1].HeaderCell.Value = "姓名";            dataGridView.Columns[2].HeaderCell.Value = "职工号";            dataGridView.Columns[3].HeaderCell.Value = "注册人";            //dataGridView.Columns[0].HeaderText = "ID";//修改列名            //dataGridView.Columns[1].HeaderText = "姓名";            //dataGridView.Columns[2].HeaderText = "职工号";            //dataGridView.Columns[3].HeaderText = "注册人";

另外附上我没用到的几个不错的功能,也许后面会用到;

dataGridView1.Columns[1].DataPropertyName =    ds.Tables[0].Columns[2].ToString();//前台第1列,显示数据库第2列的内容dataGridView1.Columns[2].DataPropertyName = ds.Tables[0].Columns[1].ToString();//前台第2列,显示数据库第1列的内容int count = dataGridView1.RowCount; //总行数for (int i = 0; i < count - 1; i++){dataGridView1.Rows[i].Cells[0].Value = i + 1;  //id列显示成序列号,从1开始}

未完待续。。