ButtonDesigner.GetDesignTimeHtml Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
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.