LoginDesigner.GetDesignTimeHtml(DesignerRegionCollection) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene el marcado que se utiliza para presentar el control asociado en tiempo de diseño y rellena una colección de regiones del diseñador.
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
Parámetros
- regions
- DesignerRegionCollection
Objeto DesignerRegionCollection al que se agregan definiciones de las regiones seleccionables y en las que se puede hacer clic en la vista en tiempo de diseño del control.
Devoluciones
Una cadena que contiene el formato utilizado para representar el control Login en tiempo de diseño.
Ejemplos
En el ejemplo de código siguiente se muestra cómo invalidar el GetDesignTimeHtml método en una clase que se hereda de la LoginDesigner clase para cambiar la apariencia de un control derivado del Login control en tiempo de diseño. En el ejemplo se dibuja un borde azul y discontinuo alrededor del control para que su extensión sea más visible, si la BorderStyle propiedad del control es el NotSet valor 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
Comentarios
El GetDesignTimeHtml método crea un EditableDesignerRegion objeto para la LayoutTemplate propiedad del control asociado Login y lo agrega al DesignerRegionCollection objeto al que hace referencia el regions
parámetro . El GetDesignTimeHtml método usa el GetDesignTimeHtml método base para generar el marcado para la representación en tiempo de diseño del Login control.
Notas a los desarrolladores de herederos
Si invalida el GetDesignTimeHtml(DesignerRegionCollection) método , asegúrese de llamar al GetDesignTimeHtml() método base porque finalmente, a través de varios niveles de invalidación, llama al Login control o a una copia del control para generar el marcado.