我有一个用户控件,我已经编写并添加到ASP.NET页面,并且运行正常。但是,我试图在Page_Load上的代码后面引用该自定义控件中的属性,但不能,因为该实例的可访问变量为null。
用户控件和Page_Load这是正常的吗?如果是这样,我如何引用控件的实例以访问其公共属性?这是我在呈现页面之前需要做的事情,以便初始化一些变量。
答案 0 :(得分:15)
我遇到了同样的问题,结果发现我正在正确注册我的自定义控件。
正确定义:
<%@ Register Src="PeriodControl.ascx" TagName="PeriodControl" TagPrefix="ucs" %>
错误的定义:
<%@ Register TagPrefix="ucs" Namespace="MyWebsite" Assembly="MyWebsite" %>
唯一的区别是直接引用ascx文件而不是程序集中的控件。去图!?
答案 1 :(得分:0)
您可以从Page_PreRender
事件中访问您的用户控件。
您可以找到有关page life cycle in asp.net here。
的更多文档