如何从同一个usercontrol中找到usercontrol中的控件

时间:2014-03-01 07:42:04

标签: c# asp.net

我有一个用户控件,它有一些像文本框一样的控件我想要找到usercontrol的所有文本框,如果它有空间内容,则将这个内容与其他内容相互补充。我用aspx格式编写了以下代码并且它工作正常但是当我在usercontrol中编写相同的代码并且我使用“this1”关键字时,“form1”冷却得到了正确的结果

 public void clearTextBox()
    {
        foreach (Control ctl in form1.Controls)
        {
            if (ctl is TextBox)
            {
                TextBox textBox = ctl as TextBox;
                if (textBox.Text == " ")
                { textBox.Text = ""; }
            }
        }
    }

1 个答案:

答案 0 :(得分:0)

您可以将Control对象传递给方法clearTextBox并使用其ControlCollection来获取每个子控件。

public void clearTextBox(Control control)
{
    foreach (Control ctl in control.Controls)
    {
        if (ctl is TextBox)
        {
            TextBox textBox = ctl as TextBox;
            if (textBox.Text == " ")
            { textBox.Text = ""; }
        }
    }
}