2016-09-23 25 views
0

我需要根據行中的數據更改數據網格視圖行的顏色。更改DataGridView顏色時未將對象引用設置爲對象的實例

我的代碼是:

foreach (DataGridViewRow Myrow in datagrid1.Rows) 
{    
    if (Myrow.Cells[0].Value.Equals("Red")) 
    { 
     Myrow.DefaultCellStyle.BackColor = Color.Red; 
    } 
    { 
     Myrow.DefaultCellStyle.BackColor = Color.Green; 
    } 
} 

但是當我嘗試運行它,我得到:對象引用不設置到對象的實例

我想這是因爲它使循環中的每一行,直到它達到一些具有空值的部分。 如何阻止它這樣做?

+2

可能重複[什麼是NullReferenceException,以及如何解決它?](http://stackoverflow.com/questions/4660142/what-is-a-nullreferenceexception-and-how-doi-i-fix -it) – Fabio

+1

在循環開始處添加if(row.Cells [0] .Value == null || row.Cells [0] .Value == DBNull.Value)return;'。你也可以在循環的開頭添加'if(row.IsNewRow)return;'。 –

回答

1

我想我需要將DataGridView的AllowUserToAddRows更改爲false,並刪除了底部的空行,它給了我空值。

如果有其他人進入相同的情況,我會離開這裏。

相關問題