下面是一个代码,我想在有回发时显示一条消息。
protected void Page_Load(object sender, EventArgs e)
{
if (Page.IsPostBack)
{
Response.Write("Hidden value :" + HiddenField1.Value);
}
}
protected void btn_Click(object sender, EventArgs e)
{
HiddenField1.Value = "test";
}
问题是我在点击按钮两次时收到消息,这显然是因为Page_Load
发生在btn_Click
之前。任何人都可以建议我一种方式,我可以在页面回复的if (Page.IsPostBack)
显示消息?
请帮助
答案 0 :(得分:2)
是的,您正在遇到页面生命周期问题。 Page_Load发生在任何回发事件之前。
如果您只是对resposne流执行Response.Write,则可以将此代码移动到页面上的重写PreRender事件。
protected override void OnPreRender(EventArgs e)
{
base.OnPreRender(e);
if (Page.IsPostBack)
{
Response.Write("Hidden value :" + HiddenField1.Value);
}
}