2016-08-28 6 views
0

私は、ItemsSourceがposteViewSourceから供給され、SelectedItemがsuperviseurViewSourceにリンクされているテーブルのidPosteフィールドにバインドされているコンボボックスを持っていたいと思います。異なるソースで2つのプロパティにバインドするにはどうすればよいですか?

<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 x:Name="idPosteComboBox" DataContext="{StaticResource posteViewSource}" ItemsSource="{Binding}" Height="23" Width="120" DisplayMemberPath="idPoste" /> 

コンボボックスは、そののDataContextに設定されたグリッドである:{StaticResource superviseurViewSource}。アイテムとのバインディングは完全に機能しますが、SelectedItemプロパティの別のDataContextを持つことができるかどうかはわかりません。どんなヒントもありがとう、ありがとう。

+0

はないアイテムのは、 'idPoste'に' SelectedItem'を結合、理にかなってい'CollectionViewSource' - > no、このコレクションのどの項目にバインドされますか? – Aybe

+0

これもidPosteになります。コンボボックスはPosteテーブルの行で埋められています(上記のcollectionviewsourceにリンクされています)。今私が望むのは、そのコンボボックスのselecteditemをSuperviseurテーブルのcollectionviewsourceの現在の行のidPosteフィールドにバインドすることです。説明するのはちょっと難しいですが、これが助けてくれることを願っています。 – snoreau

+0

さて、この表の現在選択されている項目を追跡する必要があります。データグリッドなどを使用している可能性があります。http://stackoverflow.com/a/13755582/361899 ' – Aybe

答えて

0

あなたがItemSourceのために結合し、別のSelectedItemのバインディングを持つことができるので、あなたが書くことができます: - >はい、それを結合

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

ありがとうございました。私はそれを試みたが、運がない。 SelectedItemのバインディングはこれでいいですか? SelectedItem = "{バインディングソース= superviseurViewSource、Path = idPoste、Mode = TwoWay}" – snoreau

関連する問題