1


0

WPf Datagrid Combobox値をそれぞれのテキストボックスに設定

テンプレート列としてテキストボックスとコンボボックスを持っています。 以下はXAMLです


私はコードとそのそれぞれの説明を挿入している観測可能なコレクション(odpGHSCodesColl)を持っています。 コードはfldCodesプロパティに格納されますが、fldDescriptionには説明があります。 私が達成したいのは、コードP1にDesc ABC、P2にDFG、P4にUHYがある場合、コンボボックスからP1を選択すると、次の列の対応するテキストボックスがABCで満たされ、P2、DFGなどの場合。 ご理解いただけると思います。 添付されたイベントを見つけることができません。 可能であれば、XAML自体にいくつか例を示して、より少ないコードを書く必要があるようにします。

1 Answer


0


セルテンプレートバインドが適切に解決できない場合、上記で説明した名前バインド方法を使用することはできません。 出力ウィンドウに、バインディングに関連するエラーのリストが表示されます。 このバインドを行うことができたとしても、同じx:Name = "cbTGHSCodes"(列の各セルに1つ)を持つ複数のComboBoxがあります(あなたのようなデータテンプレートでこれを行うことができる場合でも、これにバインドします)しようとしている?)

必要なのは、コンボボックスバインドを使用して、基になるオブジェクトのコードプロパティを設定することです。 コードを設定すると、基礎となるオブジェクトが説明を設定し、基礎となるオブジェクトがINotifyPropertyChangedを呼び出す必要があります。これにより、UIが更新されます。

基本的に、データグリッドには2つの列があります。 各列には、その行に表示されるアイテムのプロパティにバインドするCellテンプレートがあります。 コードが変更されると、行の項目は新しい説明を見つけ、その説明プロパティを設定し、UIに警告するNotifyPropertyChangedを設定します。