0

我有 ComboBox,我从里面有 UserTypes ObservableCollection 的“Settings”对象获取 ItemsSource,我需要将其 SelectedItem 绑定到我的“Employee”对象的 type 属性。窗口中还有其他字段,它们正确绑定到“Employee”对象中的其他属性,ItemsSource 使用 Settings 中的 UserTypes 属性正确填充,唯一不起作用的是 type 属性未与组合绑定'x selecteditem,可能是因为它的datacontext设置为“设置”对象。这是我到目前为止所拥有的:

<CollectionViewSource x:Key="settingsViewSource" d:DesignSource="{d:DesignInstance my:Settings, CreateList=True}" />
<CollectionViewSource x:Key="settingsUserTypesViewSource" Source="{Binding Path=UserTypes, Source={StaticResource settingsViewSource}}" />

<ComboBox DataContext="{StaticResource settingsUserTypesViewSource}" Name="userTypeBox" VerticalAlignment="Top" Width="100" Margin="2" ItemsSource="{Binding}"
SelectedItem="{Binding Path=Type, UpdateSourceTrigger=PropertyChanged, Mode=TwoWay}">

在后面的代码中,我有:

        InitializeComponent();
        this.emp = emp;
        InfoTab.DataContext = emp;
        userTypeBox.DataContext = MainWindow.ViewSettings.UserTypes;

emp 是正确绑定到字段的特定员工,只有组合框的选定项不起作用。任何帮助将不胜感激。

4

1 回答 1

0

我不知道您在实际代码中是否有拼写错误,或者只是在这里,但是您缺少括号

SelectedItem="Binding Path=Type, UpdateSourceTrigger=PropertyChanged, Mode=TwoWay}"

应该

SelectedItem="{Binding Path=Type, UpdateSourceTrigger=PropertyChanged, Mode=TwoWay}"
于 2012-07-18T21:23:29.693 回答