Vamos a crear un web control, que sera un label multilinea con scrollBar
Este control es practico cuando necesitamos un campo de tipo lectura y disponemos de poco espacio para mostrar la información.
Vamos a crear un nuevo Proyecto de tipo Class Library.
Lo importante son las Librerias que importamos y como lo declaramos.
A continuación el codigo.
Imports System
Imports System.Web.UI
Imports System.Web.UI.WebControls
Public Class MultiLineLabel
Inherits CompositeControl
#Region "Variables"
Private lblcontent As Label
#End Region
#Region "Propiedades"
Public Property Text() As String
Get
EnsureChildControls()
Return lblcontent.Text
End Get
Set(ByVal value As String)
EnsureChildControls()
lblcontent.Text = value
End Set
End Property
Public Overloads Property Height() As String
Get
EnsureChildControls()
Return lblcontent.Height.ToString
End Get
Set(ByVal value As String)
EnsureChildControls()
lblcontent.Height = Unit.Parse(value)
End Set
End Property
Protected Overrides ReadOnly Property TagKey() As System.Web.UI.HtmlTextWriterTag
Get
Return HtmlTextWriterTag.Div
End Get
End Property
#End Region
#Region "Crear control"
Protected Overrides Sub CreateChildControls()
lblcontent = New Label
lblcontent.ID = Me.ID & "Lab"
Me.Controls.Add(lblcontent)
End Sub
#End Region
#Region "Render Tags"
Protected Overrides Sub RenderContents(ByVal writer As System.Web.UI.HtmlTextWriter)
writer.AddStyleAttribute("overflow", "auto")
writer.RenderBeginTag(HtmlTextWriterTag.Div)
lblcontent.RenderControl(writer)
writer.RenderEndTag() 'DIV
End Sub
#End Region
End Class
sábado, mayo 12, 2007
Suscribirse a:
Comentarios de la entrada (Atom)
1 comentario:
Muy bueno, pero como hago que el control sea visible??
Publicar un comentario