投稿

8月, 2021の投稿を表示しています

【C#】2つのコンボボックスを使って、コンボボックスソースを切り替えたい

イメージ
 画面に2つのコンボボックスがあったとして、  ・1つ目のコンボボックスでアイテムを選択する  ・2つ目のコンボボックスのアイテムに、1つ目で選択したデータに関連するアイテムのみを設定 みたいなシチュエーションがあったとします。そんな場合はどうするかメモ。 【画面イメージ(適当)】 カテゴリーのコンボボックスでカテゴリーを選択すると、品名のコンボボックスに選択されたカテゴリーに属する品名のみを表示したい感じです。 それぞれのコンボボックスにはList<KeyValuePair<string, string>>型を使用するとします。 【カテゴリーの種類(これまた適当)】 ・先頭に空白行を追加しています。 【品名の種類(適当)】 ・品名のキー内先頭2桁の数字は、カテゴリーのキーに紐づいているとします。 ①カテゴリーコンボボックスにソースを設定します。 ・ついでに、品名に使用するディクショナリも作っています。 ②カテゴリーコンボボックスのアイテムが選択されたら、品名コンボボックスのソースを設定する ・こちらも先頭に空白行を追加しています。 ・カテゴリーコンボボックスで空白が選択されたときの処理は書いていません。 【結果の画面イメージ】 こんな感じで、カテゴリーに紐づく品名のみを選択項目として設定できます。 ※VisualStudio2022(preview)、.Net6(preview)で動作確認をしています。