c#怎样在winform窗体中自动生成label1控件,比如有姓名,性别,年龄三个字段就自动生成三个label来显示
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c#怎样在winform窗体中自动生成label1控件,比如有姓名,性别,年龄三个字段就自动生成三个label来显示相关的知识,希望对你有一定的参考价值。
private void button1_Click(object sender, EventArgs e)var list = new List<string> "张三", "李四", "王五" ;
for (int i = 0; i < list.Count; i++)
Label lb = new Label();
lb.AutoSize = true;
lb.Location = new System.Drawing.Point((53 + i * 60), 73);
lb.Name = "label1";
lb.Size = new System.Drawing.Size(41, 12);
lb.TabIndex = i;
lb.Text = list[i];
this.Controls.Add(lb);
参考技术A lb.Location = new System.Drawing.Point(73, (53 + i * 60));
把 i 那个变量的 写到 y 参数就OK
c#(winform)怎么修改多个控件的一个共有属性?
窗体上有50个label控件,他们的命名是按照顺序来的,比如:Label1,Label2,Label3……依次,我想在一个按钮事件中设置他们所有的Enabled属性,是不是只有一个一个的来写代码?有没有好的办法?
参考技术A 将所有需要批量操作的对象用一个List<>装起来,List<Label> lib = new List<Label>();在初始化的时候,lib.Add(Label1);lib.Add(Label2);...
在按钮事件中就遍历这个List
foreach(Label lbl in lib)
lbl.Enabled = false;
如果不仅仅是label,也可以用List<Control> lic = new List<Control>(); 参考技术B //遍历控件
foreach (Control cl in this.Controls)
//如果是Label
if (cl is Label)
Label lab = cl as Label;
lab.Enabled = false;//在这里设置
本回答被提问者采纳 参考技术C 你不如把每个tag值设置的稍微有规律一点
名字有规律,只能去反射,效率恐怕很低
以上是关于c#怎样在winform窗体中自动生成label1控件,比如有姓名,性别,年龄三个字段就自动生成三个label来显示的主要内容,如果未能解决你的问题,请参考以下文章
C#winform怎样等所有控件加载完再显示窗体?C#透明窗体显示时闪现黑块怎么解决?
C#winform怎样等所有控件加载完再显示窗体?C#透明窗体显示时闪现黑块怎么解决?