【问题标题】:Postback issue in ASP.NETASP.NET 中的回发问题
【发布时间】:2009-02-25 04:54:54
【问题描述】:

我有一个 asp.net 标签控件,其 Visible 属性设置为 false。在代码隐藏中,我根据用户是否登录将其可见性设置为真/假。一个奇怪的行为是,在回发时,代码隐藏执行并将标签的可见性值设置为任何值,然后标记执行并将标签的可见性设置为 false。在非回发请求上,由代码隐藏设置的状态被覆盖。请原谅我的无知,但我错过了一些重要的事情吗?

【问题讨论】:

  • 你能发布你的代码来澄清一下吗?
  • 这听起来像你在编码错误的事件并踩到页面生命周期。贴出代码让我们看看。
  • 我已经注意检查 PageLoad 上的 IsPostback。代码在这里无关紧要。我的问题是 - 为什么标记在代码隐藏之后执行?我缺少一些基本的东西吗?
  • 您是否进行了跟踪,看看会发生什么?或者它什么时候破裂?
  • -1:你为什么勾选了一个与问题解决方式完全无关的答案?

标签: asp.net postback


【解决方案1】:

了解页面生命周期,以及运行时触发各种页面事件的时间。

http://msdn.microsoft.com/en-us/library/ms178472.aspx

另外,我不认为代码是微不足道的。如果编码正确,您将不会遇到此问题。把它放在这里,让我们看看。

【讨论】:

    【解决方案2】:

    没有发布代码,所以你可能已经有了这个。

    您是否将所有内容都包装在 Page_Load 方法中

    if(!Page.IsPostback)
    {
        // your code here.
    }
    

    ?

    【讨论】:

    • 是的,我已经检查了 IsPostback。
    【解决方案3】:

    您的标签是否有 EnableViewState="false" 属性?

    http://www.w3schools.com/ASPNET/aspnet_viewstate.asp了解有关此属性的更多信息

    【讨论】:

    • 这只是开发人员偶尔会遇到的那些奇怪的事情之一。奇怪的是,机器重启修复了它。你会相信吗?!无论如何,感谢您的投入。
    猜你喜欢
    • 2013-09-08
    • 2011-08-11
    • 2013-10-19
    • 2011-09-18
    • 1970-01-01
    • 1970-01-01
    • 2012-10-16
    • 1970-01-01
    • 2023-03-29
    相关资源
    最近更新 更多