LoginDesigner.GetDesignTimeHtml(DesignerRegionCollection) Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Ottiene il markup usato per eseguire il rendering del controllo associato in fase di progettazione e popola una raccolta di aree della finestra di progettazione.
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
Parametri
- regions
- DesignerRegionCollection
Insieme DesignerRegionCollection al quale sono aggiunte definizioni delle aree selezionabili e selezionabili tramite clic nella visualizzazione Design-Time del controllo.
Restituisce
Stringa contenente il markup utilizzato per eseguire il rendering dell'oggetto Login in fase di progettazione.
Esempio
Nell'esempio di codice seguente viene illustrato come eseguire l'override del GetDesignTimeHtml metodo in una classe ereditata dalla LoginDesigner classe per modificare l'aspetto di un controllo derivato dal Login controllo in fase di progettazione. L'esempio disegna un bordo blu, tratteggiato intorno al controllo per rendere più visibile l'estensione, se la BorderStyle proprietà del controllo è il NotSet valore o None .
// 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
Commenti
Il GetDesignTimeHtml metodo crea un EditableDesignerRegion oggetto per la LayoutTemplate proprietà del controllo associato Login e lo aggiunge all'oggetto DesignerRegionCollection a cui fa riferimento il regions
parametro . Il GetDesignTimeHtml metodo usa il metodo di base per generare il GetDesignTimeHtml markup per il rendering in fase di progettazione del Login controllo.
Note per gli eredi
Se si esegue l'override del GetDesignTimeHtml(DesignerRegionCollection) metodo, assicurarsi di chiamare il GetDesignTimeHtml() metodo di base perché, alla fine, tramite diversi livelli di override, chiamate al Login controllo o una copia del controllo per generare il markup.