一个 panel 容器.N个 checkbox ..如何动态添加到 panel 里面..
我用呢
CheckBox[] boxs = new CheckBox[htmls.Length];
foreach (string tag in tags)
{
CheckBox box = new CheckBox();
box.Text = tag;
}
this.panel1.Controls.AddRange(boxs);可是无显示....难道要一个个计算 box.Location吗?
我用呢
CheckBox[] boxs = new CheckBox[htmls.Length];
foreach (string tag in tags)
{
CheckBox box = new CheckBox();
box.Text = tag;
}
this.panel1.Controls.AddRange(boxs);可是无显示....难道要一个个计算 box.Location吗?
这个不是 隐藏能解决的...
我这个是为以后扩展 而做的....从外部 xml 文件 读取需要 添加那些 checkbox...免得每次改源文件
我现在用 x,y ++ 一个算的...不过我觉得这样有些麻烦...不知道有没有更简便的方法.
就像 html 里面...添加控件 不用算坐标.不知道 有没有这样简便的方法
foreach (string tag in tags)
{
CheckBox box = new CheckBox();
box.Text = tag;
}
this.panel1.Controls.AddRange(boxs); 红色部分里面有东西吗?
有的话 就是坐标问题了 但是 至少能 显示一个
{
string[] tags = new string[] {"11","22","33","44" };
CheckBox[] boxs = new CheckBox[4];
for (int i = 0; i < tags.Length;i++ )
{
boxs[i] = new CheckBox();
boxs[i].Text = tags[i];
if (i > 0)
{
boxs[i].Top = boxs[i - 1].Top + boxs[i - 1].Height + 10;
}
}
this.panel1.Controls.AddRange(boxs);
}
你有两个错误
1、你的boxs中没有checkbox
2、你没有控制位置显示,就是控件的位置,可是使用top,或者setbound来设置
相对位置或者绝对位置