好吧,我有一个很奇怪的问题。我有一个普通的UserControl,在标记中有一些控件。在Page_Load
这些控件仍然是null
。我试图EnsureChildControls
是什么导致标记控件为空?
它奠定了这样的:
母版 - >首页 - > mycontrol1 - > mycontrol2 - > problemcontrol
ProblemControl是在控制为空。 MyControl1包含MyControl2。 MyControl2是另一个UserControl,它包含标记中的ProblemControl。主页没什么特别,页面包含MyControl1的标记。唯一奇怪的是ProblemControl是在Page_Init
上动态创建的。
一切工作正常,直到我得到ProblemControl没有任何控件正在创建。 ProblemControl拥有所有的设置,比如Page和Parent属性。我没有看到任何问题。所有这些(除了ProblemControl)的源代码都非常广泛,所以我希望有人可以给我一些这个问题的疑难解答提示,如果有人遇到过。
此外,我可以将ProblemControl放置在另一个页面控件上,它可以很好地工作,它与mycontrol1和/或mycontrol2有关。但是我们从来没有遇到任何与mycontrol1有关的问题,mycontrol2也没有任何我可以看到的错误。 (过去几个小时我一直在进行繁琐的分析)。
有没有其他人有这个相同的问题?是否有任何常见的事情需要检查?
更新:
好吧,我会在不久的将来,一个小的测试情况与此一起去复制它。但就目前而言,似乎在Page_Init
处动态地从UserControl内部创建UserControl是导致此问题的原因。我可以在ASPX页面上执行相同的代码,但是当我在ASCX控件上执行该代码时,如上所述,它会中断一切为空的问题。你不能嵌套UserControls!?
可能的重复http://stackoverflow.com/questions/2275625/asp-net-custom-user-control-to-add-dynamically – Earlz 2010-05-04 15:42:46