我有一個DataSource設置爲DataTable實例的ComboBox。當行被添加到DataTable時,它們在ComboBox中顯示而沒有附加代碼,但是當一行被刪除時,ComboBox保持不變。我的代碼的簡短摘要:編輯ComboBox的數據源
ComboBox selector = new ComboBox();
DataTable tbl = new DataTable();
PopulateTable()
{
DataRow row1 = tbl.NewRow();
row1["field1"] = 1;
row1["field2"] = "Some Text";
tbl.Rows.Add(row1);
DataRow row2 = tbl.NewRow();
row2["field1"] = 2;
row2["field2"] = "More Text";
tbl.Rows.Add(row2);
}
PopulateSelector()
{
selector.DisplayMember = "field2";
selector.ValueMember = "field1";
selector.DataSource = tbl;
}
RemoveRow()
{
tbl.Rows[0].Delete();
}
此時,組合框似乎是正確的,但點擊它,它恢復至以前的數據。 DataTable保持正確,在該實例中刪除該行不會導致問題,我無法使ComboBox反映這些更改。
有一個在發佈代碼中沒有組合框。 – 2012-03-30 17:47:48
對不起,我忘了包括它。它是名爲'selector'的對象。 – Davenport 2012-03-30 18:00:26