Winform中的GridView根据数据内容自定义显示列

2024-12-04 19:30:06
推荐回答(2个)
回答1:

不使用DataGridView的DataSource绑定数据,直接遍历DataTable,用代码填充控件就可以了,很简单的,写几句相关的代码:
DataGridView dgv=new DataGridView();
//设置控件属性和样式,代码略
//设置单元格样式,代码略
//添加列,代码略
DataTable dt=你要显示的DataTable;
dgv.Rows.Add(dt.Rows.Count); //添加同样的行数
for(int i=0;i{
if(((DataRow)dt.Rows[i])[0].ToString()=="0") //根据第一列的值在控件中显示“有”或“无”
dgv.Rows[i].Cells[0].Value="无";
else
dgv.Rows[i].Cells[0],Value="有";
//其它列代码略
}
希望对你有帮助,还有疑问请追问或是Hi

回答2:

我感觉应该处理DataTable,而不是在Grid中处理,遍历这些行,然后处理。

如果真的想在Grid中处理的话,可以试一下Paint事件,在此事件中处理你希望得到的。