解决办法:把用户控件里的赋值代码写到Page_PreRender 里,问题解决。
PS:以前在VS2003的时候,都会在“属性”-“事件”里找到很多Page_PreRender 、Page_Load、Page_Init事件,VS05 08貌似就只有Page_Load,其实只要复制Page_Load方法体的代码,把Page_Load换成对应的事件即可
Page_Load与Page_PreRender的执行顺序
Page_PreRender 服务器控件将要呈现给其包含的 Page 控件时发生。简单的理解为page中的控件渲染调用此事件
Page_Load 服务器控件加载到 Page 控件中时发生。加载控件时发生。
这两个执行的顺序是Load先执行,PreRender后执行。
有用户自定义控件的加载顺序:
本页面Page_Load -> 自定义控件Page_Load -> 本页面Page_PreRender
那么在本页面Page_Load 根本无法使用自定义控件,因为他还没有Page_Load ,解决方案就是使用Page_PreRender!