我阅读了一些文章,但没有解决我的问题。我的问题是当我尝试获取动态添加到Windows表单中的控件(复选框和组合框)的值时,我需要知道当按下按钮时,复选框是否被选中(或未选中),以及组合框是否为空(或非空)。这个按钮调用一个方法,在该方法中我会验证所有组件是否为空。我以以下方式添加控件:
CheckBox box;
ComboBox cmBox;
for (int i = 1; i <= sumOfRegisters; i++)
{
box = new CheckBox();
box.Name = "CheckBox" + i;
box.Text = "Some text";
box.AutoSize = true;
box.Location = new Point(10, i * 25); //vertical
cmBox = new ComboBox();
cmBox.Name = "ComboBox" + i;
cmBox.Size = new System.Drawing.Size(302, 21);
cmBox.TabIndex = i;
cmBox.Text = "Some Text";
cmBox.Location = new Point(270, i * 25);
this.groupBox.Controls.Add(cmBox);
this.groupBox.Controls.Add(box);
}
"针对ComboBox,我从数据库中添加值,这部分我省略了。"
我尝试使用foreach获取值:
foreach (Control ctrl in groupBox.Controls)
问题是我不知道如何判断控件(CheckBox 和 ComboBox)是否被选中或为空(这两种情况都要考虑)。
非常感谢您的帮助,我非常感激您的时间。
DataRepeater
控件。 - Ben NgroupBox.Controls
时不确定控件的类型? - JNYRangerforeach
语句中可能是值得的:var CheckBox chk; foreach (chk in groupbox.Controls)
和var ComboBox cmb; foreach (cmb in groupbox.Controls)
。 - Ben