动态生成的文本框TextBox TextBox1 = new TextBox();
panel1.Controls.Add(TextBox1);现要在BUTTOM点击事件中修改TextBox1.text的值。在WEB中的写法我知道(Label1.FindControl("TextBox1"as TextBox).text ="123";
WinForm中怎么写啊?
菜鸟求助啊~~~
大神们来救啊!!!

解决方案 »

  1.   

    在buttonclick事件中这样写:TextBox1.text="新的名字";
      

  2.   

    把你的 TextBox1 变量声明到对象类型作用域。
      

  3.   

    大哥啊,这是动态生成的TEXTBOX1!!!
    页面不加载是没有这个对象的!
      

  4.   

    你完全可以把 TextBox1 的实例保存起来,winform的控件的生存周期和form的生存周期一样。
    (或者你可以把TextBox1的Name记录下来)TextBox TextBox1 = new TextBox();
    TextBox1.Name = "_txtbox1";
    panel1.Controls.Add(TextBox1);...var txtbox = panel1.FindControl("_txtbox1", false)[0] as TextBox;
    txtbox.Text = "some sth.";
      

  5.   

    你声明一个类变量,如下publit a{
       TextBox TextBox1 = new TextBox();
       protected void Button1_Click(object sender, EventArgs e)
        {  
            TextBox1.Text = "asdf";
         }
          
    }
      

  6.   


    但貌似运行不了啊,,,
    错误 1 “System.Windows.Forms.Panel”不包含“FindControl”的定义,并且找不到可接受类型为“System.Windows.Forms.Panel”的第一个参数的扩展方法“FindControl”(是否缺少 using 指令或程序集引用?)
      

  7.   

    我找到解决方法了
     (panel1.Controls.Find("_txtbox1", false)[0] as TextBox).Text = "123";
    能运行~~~