我有一个Asp.NET应用程序(VS2008,Framework 2.0)。当我尝试在其中一个用户控件上设置属性时,如
myUserControl.SomeProperty = someValue;
我得到NullReferenceException
。当我调试时,我发现myUserControl
为空。用户控件句柄如何为空?我该如何解决这个问题或如何找到导致这种情况的原因?
答案 0 :(得分:5)
您在哪里尝试进入该物业?如果您在onInit中,则可能尚未加载控件。
答案 1 :(得分:5)
您在尝试执行此操作的代码中的确切位置?您可能在page lifecycle过早地尝试访问控件,但尚未实例化。
答案 2 :(得分:0)
如果您在运行时(通过ControlCollection.Add)创建了UserControl,则还需要在回发时创建它。
另一种情况可能是您的UserControl与designer.cs页面不匹配
答案 3 :(得分:0)
我试图在外部用户控件上设置标记属性。当我把房产带到OnLoad时,它起作用了。