C# 如何在WPF中对一个数据源使用多个组合框?
当我尝试对多个组合框使用同一列表时,选择将与所有组合框共享 我希望组合框将数据源视为自己的,并且不应共享选择C# 如何在WPF中对一个数据源使用多个组合框?,c#,wpf,data-binding,combobox,C#,Wpf,Data Binding,Combobox,当我尝试对多个组合框使用同一列表时,选择将与所有组合框共享 我希望组合框将数据源视为自己的,并且不应共享选择 <ComboBox ItemsSource="{Binding ActiveLanguages}" DisplayMemberPath="Name" /> ActiveLanguages是一个ObservableCollection,是应用程序的单个实例对象 此组合框位于模板上,选择会在模板的所有实例上重复。将IsSynchronizedWithCurrentItem属
<ComboBox ItemsSource="{Binding ActiveLanguages}" DisplayMemberPath="Name" />
ActiveLanguages是一个ObservableCollection,是应用程序的单个实例对象
此组合框位于模板上,选择会在模板的所有实例上重复。将
IsSynchronizedWithCurrentItem
属性设置为false根据列表的大小,复制会占用大量内存
更好的方法是使用BindingSource
每个UI对象将其数据源设置为BindingSource的新副本
BindingSources都设置了它们的.datasource=您试图绑定到的任何列表的相同实例。您是否能够发布xaml以查看如何声明组合框?我认为您需要将SelectedItem特别绑定到DataContext中的同一属性,以观察该行为…*显然,这应该是DataContext;)托马斯的解决方案不起作用是没有道理的。您能否详细说明完整的代码以及如何测试/查看所有组合框共享选择