私は自分のWPF DataGridの内部にコンボボックスを持っています。ComboBoxが選択した値を失う
<DataGridTemplateColumn Header="Account">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<TextBlock Text="{Binding Path=Account, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" />
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
<DataGridTemplateColumn.CellEditingTemplate>
<DataTemplate>
<ComboBox ItemsSource="{DynamicResource Accounts}" SelectedValue="{Binding Path=Account, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" Height="23" IsTextSearchEnabled="True"/>
</DataTemplate>
</DataGridTemplateColumn.CellEditingTemplate>
</DataGridTemplateColumn>
このデータグリッドのDataContextはObservableCollectionです。 Transactionクラスには「Account」というプロパティがあります。以下はこのプロパティの作成方法です。
public string Account
{
get { return account; }
set { account = value; NotifyPropertyChanged("Account"); }
}
私はここで間違っていますか?コンボボックスからアイテムを選択すると、ボックスの外側をクリックしても何も表示されません。アカウントプロパティのSetメソッドでブレークポイントを設定すると、値はnullになります。
これをSelectedItemに変更してもまだ動作していません。問題は、違いなく同じままです。代わりにTextBlockのバインディングで何か変更する必要がありますか? –