當我嘗試在多個組合框中使用相同的列表時,選擇與所有組合框共享。如何在WPF中使用多個組合框和一個數據源?
我想在組合框中對待數據源作爲自己和選擇不應該被共享。
<ComboBox ItemsSource="{Binding ActiveLanguages}" DisplayMemberPath="Name" />
ActiveLanguages是一個ObservableCollection,它是應用程序的單個實例對象。
該組合框是一個模板,然後選擇重演上的模板所有的實例。
當我嘗試在多個組合框中使用相同的列表時,選擇與所有組合框共享。如何在WPF中使用多個組合框和一個數據源?
我想在組合框中對待數據源作爲自己和選擇不應該被共享。
<ComboBox ItemsSource="{Binding ActiveLanguages}" DisplayMemberPath="Name" />
ActiveLanguages是一個ObservableCollection,它是應用程序的單個實例對象。
該組合框是一個模板,然後選擇重演上的模板所有的實例。
製作副本可以吃取決於列表的大小了大量的內存。
一個更好的方法是使用的BindingSource。
每個UI對象設置它的數據源的BindingSource的新副本。
的BindingSources所有設置其.datasource =的任何列表中,您試圖綁定到同一個實例。
你能發佈你的xaml來看看你是如何聲明comboBoxes的?我認爲你需要特異性結合的SelectedItem到同一屬性在DataConext觀察到的行爲... – kiwipom 2009-12-13 00:37:49
*應已DataContext的,很明顯;) – kiwipom 2009-12-13 00:38:34
它沒有托馬斯的解決方案沒有工作的感覺。你能詳細說明完整的代碼,以及如何測試/看到所有組合框共享選擇 – Zied 2009-12-13 05:19:41