繁体   English   中英

如何将组合框绑定到ObservableCollection列表中的某个项目-WPF?

[英]How to bind combo-box to a certain item in an ObservableCollection list - WPF?

我有以下代码:

C#:

public ObservableCollection<My_EDMX_Table> formatsList = new ObservableCollection<My_EDMX_Table>();

XAML:

<ComboBox 
    Grid.Row="1" 
    Grid.Column="5" 
    Margin="0, 5, 5, 5" 
    Name="CB_1" 
    ItemsSource="{Binding formatsList}"
    SelectedValue="{Binding formatsList[2], Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" 
    IsEnabled="True" 
    Opacity="1" 
    DisplayMemberPath="formatNaziv" 
    SelectionChanged="CB_1_SelectionChanged" />

我想绑定列表中的某些项目,在这种情况下,是formatsList中的第一个元素。 尽管该应用程序可以编译,但我没有将其组合框设置为从其ItemSource列表中选择的值。

绑定可观察集合并将组件设置为适当值的正确方法是什么?

绑定可观察集合并将组件设置为适当值的正确方法是什么?

正确的方法是将ComboBoxSelectedItem属性绑定到您在视图模型类中设置为formatsList[2]的视图模型的源属性。

您无需确定视图中哪个项目是“某些”项目。 视图模型决定了这一点,并返回视图随后绑定到的“某些”对象。 请记住,您的应用程序逻辑应在视图模型类中实现。

如果由于某种原因始终希望最初绑定到第三项,则最好将XAML中的SelectedIndex属性硬编码为2

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM