LoginDesigner.GetDesignTimeHtml Method (DesignerRegionCollection)
Gets the markup that is used to render the associated control at design time and populates a collection of designer regions.
Assembly: System.Design (in System.Design.dll)
Public Overrides Function GetDesignTimeHtml ( regions As DesignerRegionCollection ) As String
Parameters
- regions
-
Type:
System.Web.UI.Design.DesignerRegionCollection
A DesignerRegionCollection to which definitions of the selectable and clickable regions in the design-time view of the control are added.
Return Value
Type: System.StringA string containing the markup used to render the Login at design time.
The GetDesignTimeHtml method creates an EditableDesignerRegion object for the LayoutTemplate property of the associated Login control and adds it to the DesignerRegionCollection object that is referenced by the regions parameter. The GetDesignTimeHtml method uses the GetDesignTimeHtml base method to generate the markup for the design-time rendering of the Login control.
Notes to Inheritors:
If you override the GetDesignTimeHtml method, be sure to call the GetDesignTimeHtml base method because it eventually, through several override levels, calls on the System.Web.UI.WebControls.Login control or a copy of the control to generate the markup.
The following code example shows how to override the GetDesignTimeHtml method in a class that is inherited from the LoginDesigner class to change the appearance of a control that is derived from the Login control at design time. The example draws a blue, dashed border around the control to make its extent more visible, if the BorderStyle property of the control is the NotSet or None value.
' 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
Available since 2.0