TextBox[] txt = new TextBox[4];
for (int i = 0; i < 5; i++)
{
txt[i] = new TextBox();
txt[i].Text = "button" + i;
}
这些是创建动态文本框的代码。我不知道如何删除这些按钮。后来我发现这个文本框如何在你的项目中帮助你 这是完全删除文本框的功能。
private void CleanForm(Control ctrl)
{
foreach (Control c in ctrl.Controls)
{
if (c is TextBox)
{
((TextBox)c).Dispose();
CleanForm(this);
}
}
}
答案 0 :(得分:3)
由于您在创建文本框txt
时保留对文本框的引用,因此您可以简单地枚举该文本框以进行删除。
foreach(TextBox t in txt){
this.Controls.Remove(t);
t.Dispose();
}
txt = new Textbox[] {}; // this removes all references to those textboxes. null would work too.
答案 1 :(得分:0)
似乎似乎代码不完整,就像在一个问题中一样,我会说:
TextBox
控件才能显示在Form/Control
上,必须成为Controls
收集它的成员。换句话说,要“删除”(我想你正在谈论从界面中删除),你可以做一下这样的事情:
ctrl.Controls.Remove(textBoxControl);
textBoxControl.Dispose();
希望这有帮助。