Поделиться через


ButtonDesigner.GetDesignTimeHtml Метод

Определение

Получает разметку, используемую для отрисовки связанного элемента управления во время разработки.

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

Возвращаемое значение

Объект типа String, содержащий разметку, которая используется для отрисовки объекта Button во время разработки.

Примеры

В следующем примере кода показано, как переопределить GetDesignTimeHtml метод для изменения созданной разметки.

BorderStyle Если свойство не было задано ранее (то есть имеет NotSet значение поля), вызов GetDesignTimeHtml метода задает для него сине-пунктирную границу шириной в три пикселя, а затем отображает эту границу в области конструктора. BorderStyle Если свойство задано, отображаются существующие значения свойств границы.

Как правило, вызывает свой базовый GetDesignTimeHtml метод , ControlDesigner.GetDesignTimeHtmlкоторый вызывает Control.RenderControl метод связанного элемента управления для создания разметки.

' 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

Комментарии

Метод GetDesignTimeHtml заменяет Text свойство на свойство элемента управления , IDButton если Text не содержит отображаемых символов. GetDesignTimeHtml Затем метод вызывает свой базовый метод , ControlDesigner.GetDesignTimeHtmlкоторый вызывает Control.RenderControl метод для создания разметки.

Примечания для тех, кто наследует этот метод

Если вы переопределяете GetDesignTimeHtml() метод, как правило, вы изменяете выбранные значения свойств, а затем вызываете базовый метод для создания разметки, а затем восстанавливаете свойства до исходных значений.

Применяется к

См. также раздел