前提・実現したいこと
フォーム内のコンボボックスを別クラスのメソッドで設定したいのですが、
メソッド内でComboBoxオブジェクトを生成して、書き換える方法だと中身が表示されません。
なぜでしょうか。
発生している問題・エラーメッセージ
Combobox.Datasourceには中身が入っているが、
ComboBox.Items.Countが0になっている。
該当のソースコード
//コンボボックスがあるフォームのLoadイベント
Common common= new Common();
comboBox1 = common.setTestCombo(); //comboBox1 →設定したいコンボボックスのName
//コンボボックスを生成・リターンする別クラスのメソッド(Common.cs)
public ComboBox setTestCombo()
{
var combo = new ComboBox();
var list = new List<Common>
{
new Common{Id = "1", Name = "あああ" },
new Common{Id = "2", Name = "いいい" },
};
combo.DataSource = list;
combo.ValueMember = "Id";
combo.DisplayMember = "Name";
return combo;
}
試したこと
フォームのcomboBox1 をpublicに変更
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/08/09 19:49