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