我试图通过PostBack将变量传递回ASP.NET网页。按钮按下的状态变量存储在ViewState中。这里的问题是,在将更改后的状态发送到页面之前,我需要按两次按钮。
ViewState由Page_Load读取:
protected void Page_Load (object sender, EventArgs e)
{
if (!IsPostBack)
{
ViewState["Print"] = "Small";
Response.Write ("Status: " + ViewState["Status"].ToString());
}
else
Response.Write ("Status: " + ViewState["Status"].ToString());
}
按下按钮的ViewState设置为:
protected void ImageButton_LargeStatus_Click (object sender, ImageClickEventArgs e)
{
ViewState["Status"] = "Large";
}
为什么我需要按两次ImageButton才能更改ViewState?
谢谢。
答案 0 :(得分:0)
因为第一次您使用错误的密钥更新ViewState ...
替换为行
ViewState [“ Print”] =“ Small”;
使用
ViewState [“状态”] =“小”;