WPF中的ComboBox选定项

时间:2009-07-13 14:37:36

标签: wpf xaml data-binding combobox wpf-controls

如何在xaml中设置组合框所选项目? 我尝试过这样做的事情:

<ComboBox x:Name="cmbProject"
    ItemsSource="{Binding  Project}"
    DisplayMemberPath="Name"
    SelectedValuePath="Id"
    SelectedItem="{Binding Path=Project,Mode=TwoWay}"
    SelectedValue="{Binding Path=Id,Mode=OneWay}"/>

上述代码不起作用。我不知道我哪里出错了。

2 个答案:

答案 0 :(得分:0)

ItemsSource属性应该是一个集合,即ProjectsProjectList,我猜...此外,您只需要设置DisplayMemberPath和{{ 1}}:

SelectedValue

更新:根据评论中的信息,代码变为:

 <ComboBox x:Name="cmbProject" ItemsSource="{Binding Projects}"
           DisplayMemberPath="Name"
           SelectedValue="{Binding Project, Mode=TwoWay}" />

<ComboBox x:Name="cmbProjectStatus" ItemsSource="{Binding ProjectStatuses}" DisplayMemberPath="Name" SelectedValuePath="ID" SelectedValue="{Binding Path=ProjectStatus.ID}" SelectedItem="{Binding Path=ProjectStatus}" /> 具有DataContext类型的ProjectStatus属性和ProjectStatus类型的ProjectStatuses属性。

答案 1 :(得分:0)

您是否尝试为组合框设置IsSynchronizedWithCurrentItem="True"? 这对我有用。