Freigeben über


LoginDesigner.GetDesignTimeHtml(DesignerRegionCollection) Methode

Definition

Ruft das Markup ab, das für das Rendering des zugeordneten Steuerelements zur Entwurfszeit verwendet wird, und füllt eine Auflistung von Designerbereichen auf.

public:
 override System::String ^ GetDesignTimeHtml(System::Web::UI::Design::DesignerRegionCollection ^ regions);
public override string GetDesignTimeHtml (System.Web.UI.Design.DesignerRegionCollection regions);
override this.GetDesignTimeHtml : System.Web.UI.Design.DesignerRegionCollection -> string
Public Overrides Function GetDesignTimeHtml (regions As DesignerRegionCollection) As String

Parameter

regions
DesignerRegionCollection

Eine DesignerRegionCollection, der Definitionen der Bereiche in der Entwurfszeitansicht des Steuerelements hinzugefügt werden, die auswählbar und für Mausklicks verfügbar sind.

Gibt zurück

Eine Zeichenfolge, die das Markup enthält, mit dem das Login zur Entwurfszeit gerendert wird.

Beispiele

Im folgenden Codebeispiel wird gezeigt, wie die GetDesignTimeHtml -Methode in einer Klasse überschrieben wird, die von der LoginDesigner -Klasse geerbt wird, um die Darstellung eines Steuerelements zu ändern, das Login zur Entwurfszeit vom Steuerelement abgeleitet ist. Das Beispiel zeichnet einen blauen gestrichelten Rahmen um das Steuerelement, um seine Ausdehnung sichtbarer zu machen, wenn die BorderStyle Eigenschaft des Steuerelements der NotSet -Wert oder None ist.

// Generate the design-time markup.
public override string GetDesignTimeHtml()
{
    // Make the control more visible in the designer.  If the border 
    // style is None or NotSet, change the border to a blue dashed line. 
    MyLogin myLoginCtl = (MyLogin)ViewControl;
    string markup = null;

    // Check if the border style should be changed.
    if (myLoginCtl.BorderStyle == BorderStyle.NotSet ||
        myLoginCtl.BorderStyle == BorderStyle.None)
    {
        BorderStyle oldBorderStyle = myLoginCtl.BorderStyle;
        Color oldBorderColor = myLoginCtl.BorderColor;

        // Set the design time properties and catch any exceptions.
        try
        {
            myLoginCtl.BorderStyle = BorderStyle.Dashed;
            myLoginCtl.BorderColor = Color.Blue;

            // Call the base method to generate the markup.
            markup = base.GetDesignTimeHtml();
        }
        catch (Exception ex)
        {
            markup = GetErrorDesignTimeHtml(ex);
        }
        finally
        {
            // It is not necessary to restore the border properties 
            // to their original values because the ViewControl 
            // was used to reference the associated control and the 
            // UsePreviewControl was not overridden.  

            // myLoginCtl.BorderStyle = oldBorderStyle;
            // myLoginCtl.BorderColor = oldBorderColor;
        }
    }
    else
    {
        // Call the base method to generate the markup.
        markup = base.GetDesignTimeHtml();
    }

    return markup;
} // GetDesignTimeHtml
' Generate the design-time markup.
Public Overrides Function GetDesignTimeHtml() As String

    ' Make the control more visible in the designer.  If the border 
    ' style is None or NotSet, change the border to a blue dashed line. 
    Dim myLoginCtl As MyLogin = CType(ViewControl, MyLogin)
    Dim markup As String = Nothing

    ' Check if the border style should be changed.
    If (myLoginCtl.BorderStyle = BorderStyle.NotSet Or _
        myLoginCtl.BorderStyle = BorderStyle.None) Then

        Dim oldBorderStyle As BorderStyle = myLoginCtl.BorderStyle
        Dim oldBorderColor As Color = myLoginCtl.BorderColor

        ' Set the design time properties and catch any exceptions.
        Try
            myLoginCtl.BorderStyle = BorderStyle.Dashed
            myLoginCtl.BorderColor = Color.Blue

            ' Call the base method to generate the markup.
            markup = MyBase.GetDesignTimeHtml()

        Catch ex As Exception
            markup = GetErrorDesignTimeHtml(ex)

        Finally
            ' It is not necessary to restore the border properties 
            ' to their original values because the ViewControl 
            ' was used to reference the associated control and the 
            ' UsePreviewControl was not overridden.  

            ' myLoginCtl.BorderStyle = oldBorderStyle
            ' myLoginCtl.BorderColor = oldBorderColor
        End Try

    Else
        ' Call the base method to generate the markup.
        markup = MyBase.GetDesignTimeHtml()
    End If

    Return markup

End Function ' GetDesignTimeHtml

Hinweise

Die GetDesignTimeHtml -Methode erstellt ein EditableDesignerRegion -Objekt für die LayoutTemplate -Eigenschaft des zugeordneten Login Steuerelements und fügt es dem DesignerRegionCollection Objekt hinzu, auf das der regions -Parameter verweist. Die GetDesignTimeHtml -Methode verwendet die GetDesignTimeHtml Basismethode, um das Markup für das Entwurfszeitrendering des Steuerelements Login zu generieren.

Hinweise für Vererber

Wenn Sie die GetDesignTimeHtml(DesignerRegionCollection) -Methode überschreiben, achten Sie darauf, die GetDesignTimeHtml() Basismethode aufzurufen, da sie schließlich über mehrere Überschreibungsebenen das Login Steuerelement oder eine Kopie des Steuerelements aufruft, um das Markup zu generieren.

Gilt für:

Weitere Informationen