2011-08-25 39 views
0

我一直在打我的頭撞在牆上的這一個,我一直無法得到它的工作 - 所以我想我在這裏問,以防萬一它的東西簡單。添加新的DataRow不添加行的DataGridView

基本上,我有一個DataGridView,我試圖以編程方式向它添加一行。

這裏是我使用的代碼:

boundBookDataSet.LoadBoundBook.AddLoadBoundBookRow(
    null, null, null, null, null, DateTime.Now, null, null, null, 
    false, false, -1, null, -1, -1); 

我也打過電話雙方的數據集,以及添加一行之後新的DataRow AcceptChanges的,並且我也打過電話刷新在DataGridView上。

反正不管我做什麼,我結束了boundBookDataSet.LoadBoundBook.Count == 70 loadBoundBookBindingSource.Count == 69。我的DataGridView不會拾起新的行,因爲它不反映在綁定源(至少這是我的猜測)。

不幸的是,這是可行的 - 但我做了一個巨大的變化,無法弄清楚什麼打破了它。破碎的代碼根本沒有改變...

如果有人有任何想法如何解決這個問題,我會認真的感謝幫助。

回答

0

假設它的WinForms你談論的是這個問題的答案可以用這個線程:http://social.msdn.microsoft.com/Forums/en-US/winformsdatacontrols/thread/f12158b3-4510-47cb-b152-409489c3a51a/

+0

啊哈!我想到了。 :) 當我再次查看BindingSource中的字段時,我意識到我設置了Filter字段。如果我刪除過濾器時,loadBoundBookBindingSource.Count被正確地遞增,並在DataGridView拿起新紀錄。 基本上,它看起來像我需要清除過濾器,添加記錄,然後重新設定過濾器。 – Dave

1

啊哈!我想到了。 :)

當我再次查看BindingSource中的字段時,我意識到我已經設置了Filter字段。如果我刪除過濾器,則loadBoundBookBindingSource.Count將正確遞增,並且DataGridView將拾取新記錄。

基本上,它看起來像我需要清除過濾器,添加記錄,然後重新設定過濾器。