1

caliburn.micro を使用した wpf アプリケーションがあります。データグリッドとコンボボックスがあります。

ここにデータグリッドがあります:

<DataGrid x:Name="TriageMapRecords"
          Grid.Row="0" Grid.ColumnSpan="5"
          AutoGenerateColumns="False"
          BaseControls:DataGridExtension.Columns="{Binding TriageMapRecordColumns}"
          CanUserAddRows="False" IsReadOnly="True"
          SelectedItem="{Binding Path=SelectedTriageMapRecord, Mode=TwoWay}">

SelectedTriageMapRecord オブジェクトにはフィールド CounterpartyNameId が含まれています。

コンボボックスで選択した値を SelectedTriageMapRecord の CounterpartyNameId にバインドしたい。

私はこれを試しました:

<ComboBox x:Name="RefCounterparties" 
          DisplayMemberPath="Name" SelectedValuePath="Id" 
          SelectedValue="{Binding Source=SelectedTriageMapRecord, 
                                  Path=CounterpartyNameId, Mode=TwoWay}"
          Grid.Row="1" Grid.Column="1" HorizontalAlignment="Left" 
          Width="Auto" MinWidth="100" Margin="3,3,0,3"/>

しかし、これはうまくいきませんでした。私が欠けているものを教えていただけますか?

4

1 に答える 1

1

おそらく次のようにしたいようです:

<ComboBox x:Name="RefCounterparties"  
          DisplayMemberPath="Name" SelectedValuePath="Id"  
          SelectedValue="{Binding SelectedTriageMapRecord.CounterpartyNameId,  
                                  Mode=TwoWay}" 
          Grid.Row="1" Grid.Column="1" HorizontalAlignment="Left"  
          Width="Auto" MinWidth="100" Margin="3,3,0,3"/> 

ソースがまだDataContext. DataContext次に、ドリルダウンするパスを指定します。この場合、 のSelectedTriageMapRecordプロパティ、DataContext次にオブジェクトのCounterpartyNameIdプロパティです。SelectedTriageMapRecord

于 2012-06-19T19:31:14.420 に答える