繁体   English   中英

自定义Web服务器控件的Visual Studio设计器警告“元素的开始和结束标记之间不允许有内容 <control-name> ”

[英]Visual Studio designer warning for custom web server control “Content is not allowed between the opening and closing tags for element <control-name>”

下面的代码按预期工作,但我似乎无法摆脱上面的VS设计器警告。

这是我的自定义Web服务器控件类:

<ParseChildren(True, "Content")>
Public Class Test
    Inherits WebControl

    Property Content As Control

    Private Sub Test_Init(sender As Object, e As EventArgs) Handles Me.Init
        Me.Controls.Add(Content)
    End Sub

End Class

这是标记:

<app:Test runat="server">
    This is a test<br />
    <asp:Button runat="server" Text="Click !" />
</app:Test>

我在Content属性上尝试了以下属性的不同组合,但无法摆脱警告:

<PersistenceMode(PersistenceMode.InnerProperty), DesignerSerializationVisibility(DesignerSerializationVisibility.Content)>

找到了一些指示上述属性应摆脱警告的资源。 我没有这些运气。 有人能指出我正确的方向吗?

因此,从周末开始的今天起,我终于有了一个新的开始,终于按照我的预期工作了。

我在类声明<ParseChildren(False), PersistChildren(True)> <ParseChildren(True, "Content")>更改为<ParseChildren(False), PersistChildren(True)> ,删除了Content属性,它按预期开始工作。

请注意, <ParseChildren(False), PersistChildren(True)>将自动将开始和结束标记内的内容放入自定义控件的子控件集合中,从而使其易于使用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM