我正在编写一个web控件,其中我重写了CreateChildControls方法。在此方法中,我创建了一个EditModelPanel,向其中添加了一个按钮,然后将该EditModePanel添加到web控件的Controls集合(this.Controls.Add(xxx))。问题是该按钮在显示模式和编辑模式下都会显示。我尝试过设置EditModelPanel的PageDisplayMode属性和SuppressTag属性,但都不起作用。
为什么以编程方式添加EditModePanel会失败?
我已经在谷歌上搜索了这个问题,其他人也有同样的问题,但他没有得到任何回应。
发布于 2011-03-02 11:00:23
首先,你可以在你的控件中检测到你是否处于编辑模式并且没有创建子控件。这样你就不需要editmodepanel了。
我重构了editmodepanel类,它做事情的方式有点不同。它实现了IParserAccessor,逻辑在接口的AddParsedSubObject()方法中。我认为通过手动添加控件,您可以绕过IParserAccessor。希望这能有所帮助。
https://stackoverflow.com/questions/4706967
复制相似问题