0

私はリストを持っています

List<Control> inputBoxes = new List<Control>();

コンボボックスとテキストボックスを追加した場所。

text プロパティを設定でき inputBoxes[0].GetType().GetProperty("Text").SetValue(inputBoxes[0], "ABC", null); ますが、コンボボックスにアイテムを追加して選択するにはどうすればよいですか?

inputBoxes[0].GetType().GetMethod()なんとか使えないかな?

4

1 に答える 1

0

リフレクションを使用して単にプロパティを設定するのはなぜですか?

これを使用すると、はるかに効率的でエラーが発生しにくくなります。

inputBoxes.OfType<TextBox>().ElementAt(0).Text = "ABC";

1 つ (または複数) の ComboBoxes に項目を追加する場合:

var combos =  inputBoxes.OfType<ComboBox>();
foreach(ComboBox combo in combos)
{
    // add items here or set their DataDource, for example:
    string[] installs = new string[]{"Typical", "Compact", "Custom"};
    combo.Items.AddRange(installs);
}

using System.Linqを追加する必要があることに注意してくださいOfType

于 2012-09-16T19:31:33.563 に答える