首页 新闻 会员 周边

关于ViewState与PostBack

0
悬赏园豆:30 [已解决问题] 解决于 2009-04-30 07:08

可能是一个比较初级的问题,拿出来跟各位请教一下:

我在一个页面中放置了一个literal控件,一个button。button的click事件中有如下代码

 

protected void Button1_Click(object sender, EventArgs e)

{

  ViewState["Test"]="你好";

}

在该页面的Page_Load函数中访问ViewState

protected void Page_Load(object sender, EventArgs e)

{

  litetal1.Text += ViewState["Test"];

}

 

结果是,每次点击button后,页面完成一次postback,viewstate也会被记录,但页面并不会在第一次postback后马上发生变化,而是当刷新该页面或者再次点击buton,也就是再次postback后才能将上次的Viewstate体现出来。

 

如果一定要实现这样的目的:点击某个按钮,产生一个postback,并在当次postback就访问viewstate或session。那么有什么比较好的办法吗?

甘家口的主页 甘家口 | 初学一级 | 园豆:170
提问于:2009-04-17 21:06
< >
分享
最佳答案
0

protected void Button1_Click(object sender, EventArgs e)
{
  litetal1.Text += ViewState["Test"];
}
 
protected void Page_Load(object sender, EventArgs e)
{
 if (!IsPostBack)
 {
  ViewState["Test"]="你好";
 }
}

WizardWu | 小虾三级 |园豆:1402 | 2009-04-18 00:40
其他回答(1)
0

Button1_Click是在Page_Load之后执行的。你上面的例子相当于是先 读了ViewState,然后再改ViewState。

Azuresong | 园豆:3565 (老鸟四级) | 2009-04-17 21:29
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册