【问题标题】:When are controls initialized with their design time values?控件何时使用其设计时值初始化?
【发布时间】:2011-01-06 22:48:50
【问题描述】:


a)我是否正确假设只有在母版页上的控件合并到页面的控件树之后,控件(母版页和内容页中的控件)才能使用它们的声明性值(在设计时设置的值)进行初始化)?


b) 如果我的上述假设是正确的,那么这些控件不能在 Page.PreInit 期间用它们的设计时值初始化,因为在 Page.PreInit 事件阶段我们仍然能够动态设置母版页?!那么,如果是这样的话,控件什么时候用它们的声明值初始化呢?在初始化事件期间或...?

感谢

【问题讨论】:

    标签: asp.net webforms master-pages


    【解决方案1】:

    页面被编译成 .Net 类,因此标记的解析实际上发生在页面生命周期之外。当请求到达您的页面时,页面类已从标记和代码隐藏的组合中编译。

    这很容易验证,只需放置一个Page_PreInit 处理程序并查看页面上控件的属性。你会看到它们已经设置好了。

    MasterPage/Page 关系只是 HTML 将如何呈现的函数,以及所有内容所在的命名容器。

    实际页面编译发生的时间部分取决于您如何设置项目,部分取决于 ASP.Net 对应用程序中文件的监控。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-10-16
      • 1970-01-01
      • 1970-01-01
      • 2017-07-27
      • 1970-01-01
      • 1970-01-01
      • 2016-09-25
      • 2016-08-19
      相关资源
      最近更新 更多