如何绑定到不同源中的两个属性

本文关键字:属性 两个 何绑定 绑定 | 更新日期: 2023-09-27 18:04:19

我想有一个组合框,其ItemsSource是从一个posteViewSource和它的SelectedItem被绑定到表的idPoste字段链接到supereurviewsource。

<Window.Resources>
    <local:StagesBDDataSet x:Key="stagesBDDataSet"/>
    <CollectionViewSource x:Key="superviseurViewSource" Source="{Binding Superviseur, Source={StaticResource stagesBDDataSet}}"/>
    <CollectionViewSource x:Key="posteViewSource" Source="{Binding Poste, Source={StaticResource stagesBDDataSet}}"/>
</Window.Resources>
下面是我的combobox定义:
        <ComboBox x:Name="idPosteComboBox" DataContext="{StaticResource posteViewSource}" ItemsSource="{Binding}" Height="23" Width="120" DisplayMemberPath="idPoste" />

该组合框位于一个网格中,其DataContext设置为:{StaticResource supereurviewsource}。与项目的绑定工作得很好,但我不知道是否可以为SelectedItem属性添加另一个DataContext。如有任何提示,我将不胜感激。

如何绑定到不同源中的两个属性

您可以为ItemSource绑定另一个为SelectedItem绑定,因此您可以这样写:

<ComboBox x:Name="idPosteComboBox"
   DataContext="{StaticResource posteViewSource}" ItemsSource="{Binding}"
   SelectedItem="{Binding ---another binding---}"
   IsSynchronizedWithCurrentItem="True"
   Height="23" Width="120" DisplayMemberPath="idPoste" />