Page_Load()
{
TextBox box;
if(!isPostBack)
{
box = new TextBox();
box.ID = "MyBox";
this.Controls.Add(box );
}
}我在按钮的点击事件中用语句
(this.FindControl("MyBox") as TextBox).Text = "lisa";根本就找不到该控件!后来我用
Page_Load()
{
TextBox box;
box = new TextBox();
box.ID = "MyBox";
this.Controls.Add(box );
}生成可以找到控件,但是我的控件经过初始化以后,数据消失了,只是回到了以前的初始状态,就是说没有(this.FindControl("MyBox") as TextBox).Text = "lisa";这个值赋也没有用!我想是否我对PostBack理解不深! PostBack以后,是否所有的控件都经过一次重新构建? 但是,其他的服务器控件还保留了Text的值呢?各位高人能否指点一二!!!!!!!!!!!!
{
TextBox box;
if(!isPostBack)
{
box = new TextBox();
box.ID = "MyBox";
this.Controls.Add(box );
}
}我在按钮的点击事件中用语句
(this.FindControl("MyBox") as TextBox).Text = "lisa";根本就找不到该控件!后来我用
Page_Load()
{
TextBox box;
box = new TextBox();
box.ID = "MyBox";
this.Controls.Add(box );
}生成可以找到控件,但是我的控件经过初始化以后,数据消失了,只是回到了以前的初始状态,就是说没有(this.FindControl("MyBox") as TextBox).Text = "lisa";这个值赋也没有用!我想是否我对PostBack理解不深! PostBack以后,是否所有的控件都经过一次重新构建? 但是,其他的服务器控件还保留了Text的值呢?各位高人能否指点一二!!!!!!!!!!!!
解决方案 »
- asp.net 点击某个链接页面不跳转,弹出一个层,取出动态数据
- 100分大洋急救!!!!!!!!eventlog里的错误日志!!!急!!!!!!!
- 请问自定义控件和用户控件有什么区别??
- 分类路径访问的问题
- 谁有vs2005开发的站内查询的例子阿?(源代码)
- 【帮看看哪里出了毛病】
- 如何让按钮的单击事件首先在端相应script处理,通过后再到服务器处理?
- 请问那位能提供一个对数据库增删改记录的例子!?
- 谁能帮我看下这个问题啊?
- hosting.msugs.ch这个免费asp.net空间是否限制流量??
- |M| 再开一贴,三贴300分了 如何在用户控件调用主页面的事件 牛人来啊 谢谢
- 求一web版售票系统代码
private void Page_Load(object sender, System.EventArgs e)
{
TextBox box;
box = new TextBox();
box.ID = "MyBox";
Page.Controls[1].Controls.Add(box);
this.FindControl("box");
}private void Button1_Click(object sender, System.EventArgs e)
{
if((this.FindControl("MyBox") as TextBox).Text == "lisa")
{
Response.Write("yes");
}
else
{
Response.Write("no");
}
}PostBack就是指当前的页面有没有提交,如果提交过了this.IsPostBack得到的值就会是false,例如:
private void Page_Load(object sender, System.EventArgs e)
{
if(!this.IsPostBack)
{
TextBox box;
box = new TextBox();
box.ID = "MyBox";
Page.Controls[1].Controls.Add(box);
this.FindControl("box");
}
}
这个时候if里面的语句就只会执行一次,你说的数据消失了不知道是怎么回事
是在你第一次加载的时候执行,你生成以后,Button1_Click,第一个加载的是Page_Load,那么就不会执行 if(!this.IsPostBack)中的内容了,就会丢失这些动态生成的控件,你不要加 if(!this.IsPostBack)
就可以了