我的tabcontrol页面中有4个标签。我想清除最后一个标签中的所有文本框。但是我使用的代码只清除所选的texbox。
foreach (Control control in tabcontrol1.SelectedTab.Controls)
{
TextBox text = control as TextBox;
if (text != null)
{
text.Text = string.Empty;
}
}
答案 0 :(得分:1)
所以你想找到最后一个标签中的所有文本框?你可以使用htis:
var allTxt = tabcontrol1.TabPages.Cast<TabPage>().Last().Controls.OfType<TextBox>();
foreach(TextBox txt in allTxt)
txt.Text = "";
(您需要添加using System.Linq
)
答案 1 :(得分:0)
试试这个:对你有用..
void ClearTextBoxes(Control parent)
{
foreach (Control child in parent.Controls)
{
TextBox textBox = child as TextBox;
if (textBox == null)
ClearTextBoxes(child);
else
textBox.Text = string.Empty;
}
}
private void resetCurrentPageToolStripMenuItem_Click(object sender, EventArgs e)
{
ClearTextBoxes(tabControl1.SelectedTab);
}
答案 2 :(得分:0)
请访问以下链接。您将获得有关如何使用清除控件的更好解释。 Clear all textboxes in form with one Function。希望,这对你有所帮助。