ButtonDesigner.GetDesignTimeHtml Método

Definição

Obtém a marcação que é usada para renderizar o controlo associado no momento do design.

public:
 override System::String ^ GetDesignTimeHtml();
public override string GetDesignTimeHtml();
override this.GetDesignTimeHtml : unit -> string
Public Overrides Function GetDesignTimeHtml () As String

Devoluções

A contendo String a marcação usada para renderizar o Button momento do design.

Exemplos

O exemplo de código seguinte demonstra como sobrescrever o GetDesignTimeHtml método para alterar a marcação gerada.

Se a BorderStyle propriedade não tiver sido definida anteriormente (ou seja, tiver o valor do NotSet campo), uma chamada ao GetDesignTimeHtml método define uma borda traçada azul com uma largura de três píxeis, e depois exibe essa borda na superfície do design. Se a BorderStyle propriedade tiver sido definida, os valores existentes das propriedades de fronteira são exibidos.

Normalmente, chama GetDesignTimeHtml ao seu método base, ControlDesigner.GetDesignTimeHtml, que liga ao Control.RenderControl método do controlo associado para gerar a marcação.

' Create a class that derives from ButtonDesigner
' and displays the custom SampleButton control
' on the design surface.
Imports System.Web.UI.Design
Imports System.Drawing
Imports System.ComponentModel
Imports System.Web.UI.WebControls
Imports System.Web.UI.Design.WebControls

Namespace Examples.AspNet 

    
    Public Class SampleButtonDesigner
        Inherits ButtonDesigner

        ' Override the GetDesignTimeHtml method.
        Public Overrides Function GetDesignTimeHtml() As String

            Dim sampleButton As SampleButton = CType(Component, SampleButton)
            Dim designTimeHtml As String = Nothing

            ' Check the control's BorderStyle property
            ' to conditionally render design-time HTML.
            If (sampleButton.BorderStyle = BorderStyle.NotSet) Then

                ' Create variables to hold current property settings.
                Dim oldBorderStyle As BorderStyle = sampleButton.BorderStyle
                Dim oldBorderWidth As Unit = sampleButton.BorderWidth
                Dim oldBorderColor As Color = sampleButton.BorderColor

                ' Set properties and the design-time HTML.
                Try
                    sampleButton.BorderStyle = BorderStyle.Dashed
                    sampleButton.BorderWidth = Unit.Pixel(3)
                    sampleButton.BorderColor = Color.Blue
                    designTimeHtml = MyBase.GetDesignTimeHtml()

                    ' If an exception occurs, call the GetErrorDesignTimeHtml
                    ' method.
                Catch ex As Exception
                    designTimeHtml = GetErrorDesignTimeHtml(ex)

                    ' Return properties to their original settings.
                Finally
                    sampleButton.BorderStyle = oldBorderStyle
                    sampleButton.BorderWidth = oldBorderWidth
                    sampleButton.BorderColor = oldBorderColor
                End Try

            Else
                designTimeHtml = MyBase.GetDesignTimeHtml()
            End If

            Return designTimeHtml

        End Function

    End Class
End Namespace

Observações

O GetDesignTimeHtml método substitui a Text propriedade pela ID propriedade do Button controlo se o Text não contiver caracteres exibíveis. Depois, o GetDesignTimeHtml método chama o seu método base, ControlDesigner.GetDesignTimeHtml, que liga ao Control.RenderControl método para gerar a marcação.

Notas para Herdeiros

Se estiveres a sobrescrever o GetDesignTimeHtml() método, normalmente vais modificar valores de propriedades selecionados, depois chamar o método base para gerar a margem e depois restaurar as propriedades aos seus valores originais.

Aplica-se a

Ver também