绑定和操作对象的实例?

时间:2016-06-15 14:40:03

标签: c# wpf combobox

我想显示用户可以使用组合框选择的实例。组合框从ObservableCollection<string> Names {get;set;}获取具有绑定的所有条目。

使用绑定显示此实例的所有属性的最佳方法是什么?

我的想法是创建一个ObservableCollection<Foo> Bar {get;set;}。 现在用户选择进入组合框内。 使用所选名称,我将在ObservableCollection<Foo> Bar {get;set;}中使用此名称搜索实例,并将其复制到新实例Foo TMPBar {get;set;}中。 此实例应绑定到GUI。

这是一个很好的解决方案吗?

1 个答案:

答案 0 :(得分:0)

不是将组合框绑定到名称列表,而是绑定到实际对象的列表,并使用ComboBox的DisplayMemberPath属性来显示名称。

然后您可以通过SelectedItem属性直接访问该对象。

所以你需要:

public ObservableCollection<Foo> Bar { get; set; }
public Foo Selected { get; set; }
在您的视图模型中

,并且:

<ComoboBox ItemsSource="{Binding Bar}"
           DisplayMemberPath=Name
           SelectedItem="{Binding Selected}" />

在你看来。