因此,我有两个名为“ Phone1”和“ Phone2”的列的DataGridView。
问题是当Phone1为空时,可能是Phone2中有一个电话号码。如何在C#中检查Phone1是否为空,但如果Phone2不为空,则Phone2中的文本将转到Phone1?
假定以下输入,第二行和第三行中的Phone1
没有值:
┌───────────┬───────────┐
│ Phone1 │ Phone2 │
├───────────┼───────────┤
│ 1111111 │ 2222222 │
│ │ 3333333 │
│ │ 4444444 │
│ 5555555 │ │
└───────────┴───────────┘
这是预期的输出,
Phone2
的值已显示为后备:┌───────────┬───────────┐
│ Phone1 │ Phone2 │
├───────────┼───────────┤
│ 1111111 │ 2222222 │
│ 3333333 │ 3333333 │
│ 4444444 │ 4444444 │
│ 5555555 │ │
└───────────┴───────────┘
那么,如果第一列为空,我可以在第一列中显示第二列的值作为后备吗?
最佳答案
如果这是winforms,则像这样循环遍历DataGridView
的行:
编辑:根据Uwe Keim DBNull.Value
也应检查。
for(int i = 0; i< DataGridView.Rows.Count; i++)
{
DataGridViewCell colPhone1 = DataGridView.Rows[i].Cells["Phone1"];
DataGridViewCell colPhone2 = DataGridView.Rows[i].Cells["Phone2"];
if(colPhone1.Value == null || colPhone1.Value == DBNull.Value)
{
colPhone1.Value = colPhone2.Value;
}
else if(colPhone2.Value == null || colPhone2.Value == DBNull.Value)
{
colPhone2.Value = colPhone1.Value;
}
}
关于c# - 在第一列中显示第二列的值(如果第一列为空,则作为备用),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57704743/