C# WinForm 如何动态添加控件和设计控件布局
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C# WinForm 如何动态添加控件和设计控件布局相关的知识,希望对你有一定的参考价值。
参考技术A 动态添加,不就是不拖拽吗那就new一个控件啊,想让他定位啊?location这个属性就是定位的→控件左上角相对于其容器左上角的坐标。margin,size自己尝试哦,祝愿你C#越学越好。 参考技术B 比如button
button
btn=new
button();//初始化一个控件
btn.size=new
size(100,100);//设置大小
btn.location=new
postion(50,100);//设置坐标
btn.text="按钮1";//设置文本
this.controls.add(btn);//添加到窗体中
上面的大致就这样
C# WinForm 动态添加-删除控件内存未释放
根据需求要在Winform的一个panel中动态的添加控件,处理完后删除(子线程中操作):
for(n)
while (panel1.Controls.Count > 0)
panel1.Invoke((Action)delegate
panel1.Controls.Remove(panel1.Controls[0]);
);
panel1中根据条件动态添加控件
……
处理
……
跟踪发现内存持续增加。难道是因为panel1.Controls.Remove(panel1.Controls[0]);没有清理干净内存?
while (panel1.Controls.Count > 0)
panel1.Invoke((Action)delegate
Control C=panel1.Controls[0]);
panel1.Controls.Remove(C);
C.Dispose();
);
本回答被提问者和网友采纳 参考技术B 这个最好是看下添加控件部分的代码,主要是创建实例的部分 参考技术C remove 又不回收内存
该有引用的还是要引用到对象上
以上是关于C# WinForm 如何动态添加控件和设计控件布局的主要内容,如果未能解决你的问题,请参考以下文章