ASP.NET 用户控件实例在Page_Load页代码隐藏上引用时为 null



我有一个我编写并添加到 ASP.NET 页面的用户控件,并且功能很好。但是,我正在尝试从代码隐藏中引用该自定义控件中的属性,Page_Load,但不能,因为实例的可访问变量为 null。

这对于用户控件和Page_Load是否正常?如果是这样,如何引用控件的实例以访问其公共属性?这是我在呈现页面之前需要做的事情,以便初始化一些变量。

我遇到了同样的问题,结果发现我注册了错误的自定义控件。

正确的定义:

<%@ Register Src="PeriodControl.ascx" TagName="PeriodControl" TagPrefix="ucs" %>

定义不正确:

<%@ Register TagPrefix="ucs" Namespace="MyWebsite" Assembly="MyWebsite" %>

唯一的区别是直接引用 ascx 文件,而不是程序集中的控件。去想办法!?

您可能可以从 Page_PreRender 事件访问用户控件。

您可以在此处找到有关页面生命周期的更多文档 asp.net。

最新更新