我有2个Windows窗体。
Form1
在groupbox中有复选框。
将选中的复选框移动到Form2
中的listBox1。
我尝试编写一个代码,允许Form2
查看Form1
中有多少个分组框。有人可以给我提示吗?
(Form1中)
form2.Populatelist(
groupBox1,
groupBox2
);
(窗体2)
public void Test(params GroupBox[] groupboxes)
{
for(int i=0;**# of groupboxes in Form1**;i++)
{
var checkBoxes = groupboxes[i].Controls.OfType<CheckBox>();
foreach(var checkBox in checkBoxes)
{
if(checkBox.Checked==true)
{
if(checkBox.Checked==true)
{
listBox1.Items.Add(checkBox.Text);
}
if(listBox1.Items.Count>0)
{
listBox1.SetSelected(0, true);
}
}
}
}
答案 0 :(得分:1)
您只需要计算一组分组框,然后将其公开为Form1中的公共属性,如
public int GroupBoxCount { get; set; }
在Form2中传递Form1的实例,如
Form2 frm = new From2(this);
然后您可以像
一样访问它for(int i=0; i < frm1.GroupBoxCount;i++)