Web窗体控件在运行时为null.在重命名控件id后修复自身



我偶尔会遇到这样一个奇怪的Microsoft错误,即Web窗体上的控件(带有设计器文件)在运行时为null。

在ASPX页面中重命名控件的ID总是可以解决问题,但其他任何操作都无法解决。

并不是所有控件都会出现问题,只是一些控件,通常是我最近添加到页面中的控件。

还有人见过这个吗?

我在两种不同的情况下看到了这类事情:

  1. 你在你的控件上设置了OutputCache——为此,你只需要知道哪些控件正在使用OutputCache,甚至更好地使这个控件自给自足,这样就不需要来自页面的外部交互。

  2. 由于某种原因,相应的设计器文件被破坏,VisualStudio没有正确更新ID——我从来没有这么多时间和耐心来深入研究它。

在我的案例中,问题是由文本中包含无效内容的控件引起的。确保从控件的值中删除所有<>字符,然后对其进行测试。

最新更新