自定义LiteralControl不会插入页面

时间:2015-07-07 19:26:04

标签: asp.net vb.net inheritance webforms

每次我需要在webforms中添加一个控件时,我厌倦了创建一个System.Web.UI.LiteralControl。所以,我决定如果我创建了一个用该值初始化的自定义LiteralControl,它会对我有帮助。

所以,我创建了这个非常简单的类:

    Public Class ScriptLiteralControl
    Inherits System.Web.UI.LiteralControl

    Private _Text As String

    Public Sub New()
        Me.InitControl()
    End Sub

    Private Sub InitControl()
        Me._Text = "<script type=""text/none""></script>"
    End Sub

    Public Overrides Property Text As String
        Get
            Return Me._Text
        End Get
        Set(value As String)
            Me._Text = value
        End Set
    End Property
End Class

但是当我在我的网页上这样做时:

dim slc as New ScriptLiteralControl
Me.Header.Controls.Add(slc)

绝对没有任何补充。

根据我读过的ASP.NET文档,我所要做的就是在我的实现中基本覆盖Text属性,但这似乎并没有起作用。

有人可以告诉我在我的实施中我没有遵循什么模糊的.net规则吗?

1 个答案:

答案 0 :(得分:0)

您不必覆盖Text属性。我认为这是导致你的问题的原因。试试这个:

Public Class ScriptLiteralControl Inherits System.Web.UI.LiteralControl Public Sub New() Me.Text = "Put your script text here" End Sub End Class