ユーザー入力に基づいていくつかのコンボボックスを作成しています。私はボックスをうまく作成しますが、その中のテキストをチェックしたい場合、私は苦労しています。C#ダイナミックコントロールへのアクセスWindowsフォーム
私はIListにそれらを格納することを考えていましたが、これまでのところ動作していないようです。目標はボタンのクリックですべてのテキストを変更することですが、いくつかの試みの後で私は不満を感じています。
IList<ComboBox> comboBoxes = new List<ComboBox>();
private void AddComboBox(int i)
{
var comboBoxStudentAttendance = new ComboBox();
comboBoxStudentAttendance.Top = TopMarginDistance(i);
comboBoxStudentAttendance.Items.Add("");
comboBoxStudentAttendance.Items.Add("Present");
comboBoxStudentAttendance.Items.Add("Absent");
comboBoxStudentAttendance.Items.Add("Late");
comboBoxStudentAttendance.Items.Add("Sick");
comboBoxStudentAttendance.Items.Add("Excused");
comboBoxes.Add(comboBoxStudentAttendance);
this.Controls.Add(comboBoxStudentAttendance);
}
私は以下を試みましたが、成功しませんでした。
private void DistributeAttendanceButton_Click(object sender, EventArgs e)
{
for (int i = 0; i < sampleNum; i++)
{
switch (MasterComboBox.Text)
{
case "Present":
comboBoxes.ElementAt(i).Text = "Present";
break;
}
}
}
を試してみてください。リストだけで動作するはずです。私はいつもそれをする。次に、comboBoxes [i] .Text = "Present"を使用します。 – jdweng
私はそれらの変更を試してみましたが、私はそれらを間違って実装しているかどうかは不明です。 – ghh1415