asp.net – 在页面生命周期的PreInit事件中创建动态控件?

MSDN表示在页面生命周期的PreInit事件中创建动态控件.

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

为什么?

在PreInit Event中创建有什么好处?

我见过开发人员在Page_Load方法中创建动态控件的代码

如果有什么区别?

问候

解决方法

如果您不需要担心在回发中保存控件的ViewState,则Page_Load可以正常工作,但如果您需要保留它,则Load阶段不应该添加这些控件.

在加载ViewState之前,动态控件必须存在于页面的控件层次结构中.加载视图状态 – 初始化之前只有一个阶段.这意味着,如果您希望动态控件保持视图状态,则必须将它们添加页面的Init事件中的控件层次结构中.

http://aspnet.4guysfromrolla.com/demos/printPage.aspx?path=/articles/092904-1.aspx

但请注意,您无法在Init事件中访问ViewState,因为它尚未加载.因此,如果需要,您需要使用不同的持久性介质来跨回发(如Session)存储变量.

相关文章

### 创建一个gRPC服务项目(grpc服务端)和一个 webapi项目(...
一、SiganlR 使用的协议类型 1.websocket即时通讯协议 2.Ser...
.Net 6 WebApi 项目 在Linux系统上 打包成Docker镜像,发布为...
一、 PD简介PowerDesigner 是一个集所有现代建模技术于一身的...
一、存储过程 存储过程就像数据库中运行的方法(函数) 优点:...
一、Ueditor的下载 1、百度编辑器下载地址:http://ueditor....