ComboBox 到 select 创建时的第一个值

ComboBox to select first Value when created

我在 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 添加新项目时,组合框没有任何选择(根据我的代码,这是正确的)。有什么方法可以添加触发器或上面的东西,只有在没有选择任何东西时才选择第一个项目,例如在添加新的项目控件时?

在 comboBox 实例上设置 IsSynchronizedWithCurrentItem="True",以便它始终与当前集合项同步。

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

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

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