我很確定在ASP.NET 1.0/1.1的日子裏,在運行時創建的控件需要在Page Lifecycle的Page_Load
事件之前添加(即在Page_Init
之內)。在ASP.NET中添加動態控件,在1.1和2.0之間有區別嗎?
這裏有一個文章微軟在它(對於.NET 1.0/1.1):
HOW TO: Dynamically Create Controls in ASP.NET:
注意當您在Web窗體上創建動態控件 ,你必須創建 控件,並添加他們將控制 集合在Page_Init 事件處理程序或Page_Load事件 處理程序中。否則,控件可能不會按預期方式運行。
但是,在這裏的一些帖子中,似乎不再是這種情況。在Page_Load
內添加的控件似乎適用於其他人。一些職位包括:
creating dynamic control in asp.net
Viewstate - utter confusion.
我已經嘗試過自己,實際上它的工作,雖然我沒有做足夠的測試撈出任何異常行爲。
那麼Page_Load
是一個安全的階段添加動態控件?或者它僅適用於.NET 2.0及以上版本?
@ Vilx-:你的文章是我讀過的關於這個問題的更全面的文章之一。 :) – 2009-11-10 15:28:32
我正在處理定期動態添加的控件,所以我必須理解這一點。 :) – 2009-11-10 16:09:51