MVVMでWPFを使用しています。問題は、Model クラスに、PersonID、Name、Job の 3 つのプロパティが含まれているということです。View Model にはPerson
クラスが含まれています。ビューにはComboBox
forが含まれており、エンジニア、弁護士、医師などJob
を使用してXAMLに値を静的に入力しました。ビューに特定の人が表示され、入力できるときにその人の仕事を表示するには、プロパティにComboBoxItem
バインドされたコンボボックスが必要です/Person.Job
仕事を変更し、個人に送信される新しい値を変更します (つまり、MS Access フォームでそのようなコンボ ボックスを使用したい) よろしくお願いします。ここにXAMLコードComboBox
<ComboBox ItemsSource="{Binding Person, UpdateSourceTrigger=PropertyChanged}"
SelectedValue="{Binding Path=Job, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
SelectedValuePath="PersonID"
SelectedItem="{Binding Person.Job, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
Width="50" Height="20"
Grid.Row="1" Grid.Column="2"
HorizontalAlignment="Left">
<ComboBoxItem Content="Engineer"/>
<ComboBoxItem Content="Lawyer"/>
<ComboBoxItem Content="Doctor"/>
</ComboBox>
ジョブはコンボ ボックスに正しく表示されますが、新しい値または変更された値を保存すると、データベースに "System.Windows.Controls.ComboBoxItem: Engineer" が表示され、これを修正する方法が表示されます。ありがとう