C#和ASP - 按钮上的保留变量值单击

时间:2015-11-13 11:07:39

标签: c# asp.net

我正在为另一个人的网站制作警告系统。前提很简单,如果满足条件并且warningFlag变量设置为“”,则发出警告并将warningFlag变量设置为“Y”。

但是它永远不会保留该值并始终触发警告。我已经尝试过ViewState,但它不起作用。有点混淆为什么它不起作用,因为ViewState应该完成这个技巧。也许我错过了什么?你能帮助ASP初学者吗?

的Page_Load

[self.CompBtn setBackgroundImage:[UIImage imageWithColor:[UIColor colorWithRed:118.0/255.0 green:183.0/255.0 blue:59.0/255.0 alpha:1]] forState:UIControlStateNormal];

按钮点击事件

if (ViewState["warningFlag"] == null)
    ViewState.Add("warningFlag", ""); //Add the flag
else
    ViewState["warningFlag"] = ""; //Reset the flag

1 个答案:

答案 0 :(得分:1)

第2,4行正在做同样的事情(不是100%,但具有相同的最终结果)

if (ViewState["warningFlag"] == null)
    ViewState.Add("warningFlag", ""); //Add the flag
else
    ViewState["warningFlag"] = ""; //Reset the flag

如果您想停止警告,请执行以下操作:

if (ViewState["warningFlag"] == null)
    ViewState.Add("warningFlag", "");  
else
    ViewState["warningFlag"] = "x"; //<-------- see this

编辑(评论后)

所以改为:

if (ViewState["warningFlag"] == null)
    ViewState.Add("warningFlag", ""); //Add the flag
else

if (ViewState["warningFlag"].ToString() !="Y")
     ViewState["warningFlag"] = ""; //Reset the flag