我在winforms應用程序上有一個datagrid,並且當用戶雙擊數據網格上的一個單元格時,會調用以下方法。將發佈變量發佈到組合框控件文本值
private void dataCaseDiary_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
{
try
{
int cellRow = e.RowIndex;
int cellCol = e.ColumnIndex;
DataTable table = (DataTable)dataCaseDiary.DataSource;
var currentDiaryID = table.Rows[cellRow]["DiaryID"];
var currentUser = table.Rows[cellRow]["To Action"];
var currentType = table.Rows[cellRow]["Diary Type"];
txtDiaryID.Text = currentDiaryID.ToString();
cboReassign.Text = currentUser.ToString();
cboAmendDiaryType.Text = currentType.ToString();
}
catch (Exception eX)
{
MessageBox.Show(eX.Message);
}
}
然而異常在生產線
cboAmendDiaryType.Text = currentType.ToString();
例外規定,「對象引用不設置爲一個對象的一個實例」的發生。
我花了一些時間看這個,並找不到我做錯了什麼。這三個var變量都從數據網格中選取正確的值,其中兩個變量發佈到表單上控件的文本值,但是第三個變量失敗。
我使用'txt'的前綴表示文本框控件,'cbo'表示組合框。
你確定你有「Diary Type」這個名字嗎?也許你需要「DiaryType」? – Reniuz 2012-04-06 13:59:11
我也這麼認爲,但他說:「三個var變量都從數據網格中選取正確的值」 OP:您是否檢查過以確保它們實際上被填充? – Botonomous 2012-04-06 14:00:45
您是否試圖將cboAmendDiaryType設置爲不在其項目列表中的值? – Justin 2012-04-06 14:01:03