我有一个我已经编写并添加到 ASP.NET 页面的用户控件,并且功能很好。但是,我试图在 Page_Load 上从后面的代码中引用该自定义控件中的一个属性,但不能,因为该实例的可访问变量为空。
这对于用户控件和 Page_Load 是否正常?如果是这样,我怎样才能引用控件的实例以访问其公共(public)属性?这是我在呈现页面之前需要做的事情,以便初始化一些变量。
最佳答案
我遇到了同样的问题,结果证明我错误地注册了我的自定义控件。
正确定义:
<%@ Register Src="PeriodControl.ascx" TagName="PeriodControl" TagPrefix="ucs" %>
不正确的定义:
<%@ Register TagPrefix="ucs" Namespace="MyWebsite" Assembly="MyWebsite" %>
唯一的区别是直接引用 ascx 文件而不是程序集中的控件。去搞清楚!?
关于在页面代码后面的 Page_Load 上引用 ASP.NET 用户控件实例时为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10340610/