ComboBox在创建时选择第一个值

时间:2015-01-27 15:25:10

标签: c# wpf xaml combobox

我在ItemControl中有一个组合框。 xaml是

<ComboBox ItemsSource="{Binding DataContext.NodeMembershipFunction,
       RelativeSource={RelativeSource AncestorType={x:Type ItemsControl},
       AncestorLevel=1}}" 
    DisplayMemberPath="_Name" 
    SelectedValue="{Binding Condition, Mode=TwoWay}" 
    SelectedValuePath="_Type">
</ComboBox>

我的组合框在上面工作正常,所以我没有发布任何代码来解释上面。

我的问题是,当我向ItemControl添加新项目时,combox没有选择任何内容(根据我的代码,这是正确的)。有没有办法在上面添加一个触发器或什么东西,只有当没有选择任何东西时才选择第一个项目,例如添加新的itemcontrol?

1 个答案:

答案 0 :(得分:2)

在comboBox实例上设置IsSynchronizedWithCurrentItem="True",使其始终与当前的集合项同步。

<ComboBox IsSynchronizedWithCurrentItem="True"..../>

此外,在集合中添加项目不会使SelectedItem消失,除非您重新初始化整个列表。

我建议使用ObservableCollection<T>作为属性NodeMembershipFunction,以防没有这样做,并将项目直接添加到集合中而不是重新填充它。

相关问题