代码之家  ›  专栏  ›  技术社区  ›  Nikola Stjelja

如何使用ASP.NET中的htmlGenericControl创建段落(<p>)。

  •  19
  • Nikola Stjelja  · 技术社区  · 16 年前

    如何使用htmlGenericControl类在ASP.NET中创建pragraph<p>标记?

    3 回复  |  直到 16 年前
        1
  •  27
  •   tvanfosson    16 年前
    HtmlGenericControl para = new HtmlGenericControl ( "p" );
    

    尽管我将它作为额外属性/方法的容器控件保留。

    HtmlContainerControl para = (HtmlContainerControl)new HtmlGenericControl ( "p" );
    
        2
  •  4
  •   Andrea Celin    16 年前

    我知道,也许不是实现的最快方法,但我曾经编写“缺少”的HTML控件,以便以后通过代码重用,而不必纠结于HTML标记。

    Public Class HtmlParagraph
        Inherits HtmlControl
    
        Public Sub New()
            MyBase.New("p")
        End Sub
    
        Protected Overrides Sub AddParsedSubObject(ByVal obj As Object)
            If (TypeOf obj Is LiteralControl) Then
                Me._text = DirectCast(obj, LiteralControl).Text
            Else
                MyBase.AddParsedSubObject(obj)
            End If
        End Sub
    
        Protected Overrides Sub Render(ByVal writer As HtmlTextWriter)
            writer.RenderBeginTag(HtmlTextWriterTag.Fieldset)
            If (Me.HasControls) Then
                Me.RenderChildren(writer)
            ElseIf (Not String.IsNullOrEmpty(Me._text)) Then
                writer.Write(Me._text)
            End If
            writer.RenderEndTag()
        End Sub
    
    
        Private pText As String = String.Empty
        <Category("Appearance"), PersistenceMode(PersistenceMode.InnerDefaultProperty), Localizable(True), DefaultValue(""), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)> _
        Public Overridable Property [Text]() As String
            Get
                If (Me.pText Is Nothing) Then Return String.Empty Else Return Me.pText
            End Get
            Set(ByVal value As String)
                Me.pText = value
            End Set
        End Property
    End Class
    
        3
  •  -7
  •   gius    16 年前
    new HtmlGenericControl("p");
    

    ps.尝试使用IntelliSense…

    推荐文章