0

DataGridView の空の行の色を変更しようとしています

foreach (DataGridViewRow r in dgv1.Rows)  
if (r.Value.ToString() == "")
//if (r.Cells.Value.ToString() == "") - also trying
r.DefaultCellStyle.BackColor = Color.WhiteSmoke;

ただし、Row には Value の定義がなく、Cells は Column で指定する必要があります。
どうすればいいですか?

4

2 に答える 2

1

さて、あなたはすべてをチェックする必要がありますCells。LINQを使用してこれを行う方法は次のとおりです。

foreach(DataGridViewRow r in dgv1.Rows) {
    if(r.Cells.All(c => c.Value.ToString() == string.Empty)) {
        r.DefaultCellStyle.BackColor = Color.WhiteSmoke;
    }
}
于 2012-06-30T15:04:22.853 に答える
0
foreach (DataGridViewRow r in dgv1.Rows)  
if (r.Cells["YourImportantFieldNameLikeID"].Value == null)
r.DefaultCellStyle.BackColor = Color.WhiteSmoke;

最後の空の行を表示したくない場合は、次のコマンドで無効にできます。

DataGridViewName.AllowUserToAddRows = False;
于 2012-06-30T15:05:30.627 に答える