Wpf 如何在双向绑定组合框中显示所选项目/值?

Wpf 如何在双向绑定组合框中显示所选项目/值?,wpf,binding,Wpf,Binding,我有一个组合框,有模式双向绑定。 我将combobox绑定到家庭成员列表(MemberId、MemberType)表中。 我想显示列表中的选定项(MemberType)。将SelectedItem绑定到 public FamilyMember Selectedmember { get{...} set{...} }..... 并确保在此成员的setter中调用NotifyPropertyChanged方法 然后,您可以将视图上的其他对象绑定到此SelectedMember,并显示您可能需要的任

我有一个组合框,有模式双向绑定。 我将combobox绑定到家庭成员列表(MemberId、MemberType)表中。 我想显示列表中的选定项(MemberType)。

将SelectedItem绑定到

public FamilyMember Selectedmember { get{...} set{...} }.....
并确保在此成员的setter中调用NotifyPropertyChanged方法


然后,您可以将视图上的其他对象绑定到此SelectedMember,并显示您可能需要的任何信息。

您可以将组合框上的
SelectedItem
属性绑定到代码隐藏中的属性

如果需要将其显示为可视项目,则可以通过将
ContentPresenter
Content
绑定到该选定项目来实现

例如

<ComboBox ItemsSource={Binding Path=Collection} SelectedItem={Binding Path=MySelectedItem}/>
<ContentPresenter Content={Binding Path=MySelectedItem}/>

您必须在代码隐藏中实现INotifyPropertyChanged接口,才能使其正常工作,但也不要忘记将ContentTemplateSelector设置为您最喜欢的DataTemplateSelector:)
private object m_selectedItem;
public object MySelectedItem
{
    get { return m_selectedItem; }
    set
    {
        m_selectedItem = value;
        PropertyChanged(this, new PropertyChangedEventArgs("MySelectedItem"));
    }
}