我雖然我會發布這個花費了幾個小時試圖解決後,我無處可去。首先,我完全知道WinForms中的數據綁定並不是最好的。這表示它在大多數情況下都能正常工作。WinForms DataBinding與DataGridView
在我的場景中,我有一個綁定源,它是我的窗體的主人。用於此綁定源的對象也具有一些簡單屬性和兩個綁定列表作爲屬性。這個類和綁定列表的類類型都實現INotifyPropertyChanged。在我的表單中,我有兩個DataGridView用於顯示綁定列表屬性的內容。
這也是通過設計時的數據綁定完成的。我有兩個綁定源,每個使用主綁定源作爲數據源,然後使用各自的綁定列表屬性作爲數據成員。
到目前爲止,我會認爲這是相當標準的。
要更新這些列表中的內容,我有按鈕來顯示創建一個新項目的表單,然後使用BindingList.Add()將其添加到列表中。
現在在代碼中,如果您調試,項目在列表中,但是,網格不會更新。 但是,如果我將列表框添加到只使用其中一個列表綁定源的窗體,那麼兩個網格都會按預期方式開始刷新。
我很抱歉,如果有任何不清楚的地方,我儘量以最好的方式解釋一下這個令人困惑的情況。
任何想法都會有幫助,因爲我真的不想使用隱藏列表框。
我不知道這是否只是我或沒有,但我沒有,如果所有的理解對象綁定實現*** INotifyPropertyChanged *** – alexb
是的,所有正在數據綁定的對象實現INotifyPropertyChanged –