110,533
社区成员
发帖
与我相关
我的任务
分享
[Quote=引用 8 楼 的回复:]
引用 2 楼 的回复:
如果你所有的数据源中都有相同的需要显示的列,那么你就循环一下,把你需要的列设为true
else 全为false即可。
for (int count = 0; count < dataGridView1.Columns.Count; count++)
{
if (dataGridView1.Columns[count].HeaderText.Tri……
[/Quote]
不执行,还有问啊, 因为 IF 不满足被。
我就不明白了,你为什么非的用 int 索引, 如果列变掉了你不是悲剧吗, 你为什么不用 string 索引
foreach(var column in this.dateGridView.Columns)
{
if(column.Caption 或 column.HeaderText == "Data")
{
......
}
}
protected void InitDgvGoodsInfor(DataGridView dgv)
{
for (int count = 0; count < dgv.Columns.Count; count++)
{
if (dgv.Columns[count].HeaderText.Trim().ToLower() == "goodsname")
{
dgv.Columns[count].HeaderText = "名称";
dgv.Columns[count].DisplayIndex = 0;
continue;
}
else if (dgv.Columns[count].HeaderText.Trim().ToLower() == "goodscode")
{
dgv.Columns[count].HeaderText = "商品码";
dgv.Columns[count].DisplayIndex = 1;
continue;
}
else if (dgv.Columns[count].HeaderText.Trim().ToLower() == "goodsnorm")
{
dgv.Columns[count].HeaderText = "规格型号";
dgv.Columns[count].DisplayIndex = 2;
continue;
}
else if (dgv.Columns[count].HeaderText.Trim().ToLower() == "goodsunit")
{
dgv.Columns[count].HeaderText = "计量单位";
dgv.Columns[count].DisplayIndex = 3;
continue;
}
else
{
dgv.Columns[count].Visible = false;
continue;
}
}
}