我已經通過了一堆例子在網上看了,但我無法找到任何工作(或我做錯了)。更新組合框的下拉BindingSource的改變後
組合框,勢必像這樣的詞典(字符串,字符串),並沒有什麼:
cbBox.DataSource = New BindingSource(dictStrings.Keys, Nothing)
然而,dictStrings.Add(s1, s2)
被調用後,組合框的下拉菜單中未列出的新附加值dictStrings
。我怎樣才能解決這個問題?我嘗試重新綁定datasource
,但它只是將下拉菜單留空。我試圖使用ResetBindings()
函數,但這不會起作用。謝謝。
使用'名單'作爲數據源存在同樣的問題 - 他們不看更改的內容或提供的通知。您可以使用'BindingList '來替代列表,但是對於需要編寫自定義集合類的字典,可能需要實現IDictionary並提供通知。一個'的ObservableCollection(中KeyValuePair(字符串,字符串))'可能工作(還沒有嘗試過) –
Plutonix
謝謝你的信息 – cjw
我檢查和ObservableDictionary從IDictionary中和INotifyCollectionChanged建是很酷,但它不會幫助這個問題 - 它需要IBindingList的這以Dictionary爲基礎並不容易。 – Plutonix