如何清空PANEL里的控件,并捎毁这些控件

fyfcom 2011-02-22 03:34:10
我想动态向panel里添加按钮。
再次添加按钮时,想将之前添加的按钮从pannel里清除,并捎毁这些控件。
应如何写呢?
...全文
301 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
SHAKA919 2011-02-22
  • 打赏
  • 举报
回复
foreach (Control c in panel1.Controls)
{
if (c is Button)
{
panel1.Controls.Remove(c);
}
}
「已注销」 2011-02-22
  • 打赏
  • 举报
回复
this.panel1.Controls.Clear();
为什么都不用这个???
wuyq11 2011-02-22
  • 打赏
  • 举报
回复
释放
int x =this.panel1.Controls.Count - 1;
for (int i = x; i >= 0; i--)
{
if (this.panel1.Controls[i] is Button)
{
this.panel1.Controls.Remove(this.panel1.Controls[i]);
}
}

xixihaha_2011_098 2011-02-22
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 dunao 的回复:]

不好意思,刚才写错了
在执行了MainFuncPanel.Controls.Remove(c);后foreach的条件就不成立了,所以清不光!
用下面的方法就可以了


C# code

Control[] control = new Control[MainFuncPanel.Controls.Count];
MainFuncPanel.Control……
[/Quote]

+1。如果不复制PANEL里的控件不能完全删除。
CraxyMouse 2011-02-22
  • 打赏
  • 举报
回复
不好意思,刚才写错了
在执行了MainFuncPanel.Controls.Remove(c);后foreach的条件就不成立了,所以清不光!
用下面的方法就可以了



Control[] control = new Control[MainFuncPanel.Controls.Count];
MainFuncPanel.Controls.CopyTo(control, 0);
foreach (Control c in control)
{
if (c is Button)
{
MainFuncPanel.Controls.Remove(c);
}
}
fyfcom 2011-02-22
  • 打赏
  • 举报
回复
为什么我要加个do 循环才能清空得了呢。不加的话,不能完全清空。

do
{
foreach (Control c in MainFuncPanel.Controls)
{
MainFuncPanel.Controls.Remove(c);

}
} while (MainFuncPanel.Controls.Count != 0);
CraxyMouse 2011-02-22
  • 打赏
  • 举报
回复
用这种方法就可以了

foreach (Control c in panel1.Controls)
{
if (c is Button)
{
panel1.Controls.Remove(c);
}
}
大家好,又见面了!EasyUI又更新了,这次更新内容还是不少的,具体内容请参考下面的更新说明,官方的更新说明中还少了1条,我给补上了。 jQuery EasyUI 1.3.5版本更新内容: Bug(修复) searchbox:修复“searcher”函数提供的“name”参数值错误的问题; combo:修复“isValid”方法无法返回布尔值的问题; combo:修复点击页面某一个combo组件的下拉列表时触发的“onHidePanel”事件会导致页面上其他combo组件的下拉列表被关闭的问题; combogrid:修复某些从combo组件继承来的方法无法使用的问题。 Improvement(改进) datagrid:改进检查行时候的性能; menu:允许追加菜单分隔符; menu:新增“hideOnUnHover”属性用于在鼠标离开菜单的时候指示是否需要隐藏菜单; slider:新增“clear”和“reset”方法; tabs:新增“unselect”方法、“onUnselect”事件; tabs:新增“selected”属性,用于指定的默认打开的面板; tabs:Tab Panel(Tab页)新增“collapsible”属性,用于设置是否允许摺叠面板; tabs:新增“showHeader”属性、“showHeader”方法和“hideHeader”方法; combobox:允许“disabled”属性禁用下拉列表选项; tree:改进数据加载时候的性能; pagination:新增“layout”属性,用于自定义控件的样式布局; accordion:新增“unselect”方法、“onUnselect”事件; accordion:新增“select”和“multiple”属性; accordion:新增“getSelections”方法; datebox:新增“sharedCalendar”属性,允许多个datebox控件共享使用同一个calendar控件。 datebox:新增“buttons”属性,用于自定义日历下方的按钮。 (译者注:该点更新内容官方更新公告上没有注明,具体内容和用法请看datebox的API。) 历史版本: - jQuery EasyUI 1.3.4 离线API简体中文版 http://download.csdn.net/detail/richie696/6302785 - jQuery EasyUI 1.3.4 离线API简体中文版 http://download.csdn.net/detail/richie696/5363933

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧