DetailsViewDesigner.GetDesignTimeHtml Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft das Markup ab, das zum Rendern des zugeordneten DetailsView Steuerelements zur Entwurfszeit verwendet wird.
Überlädt
| Name | Beschreibung |
|---|---|
| GetDesignTimeHtml() |
Ruft das Markup ab, das zum Rendern des zugeordneten Steuerelements zur Entwurfszeit verwendet wird. |
| GetDesignTimeHtml(DesignerRegionCollection) |
Ruft das Markup ab, das zum Rendern des zugeordneten Steuerelements zur Entwurfszeit verwendet wird, und füllt eine Auflistung von Designerbereichen auf. |
GetDesignTimeHtml()
Ruft das Markup ab, das zum Rendern des zugeordneten Steuerelements zur Entwurfszeit verwendet wird.
public:
override System::String ^ GetDesignTimeHtml();
public override string GetDesignTimeHtml();
override this.GetDesignTimeHtml : unit -> string
Public Overrides Function GetDesignTimeHtml () As String
Gibt zurück
A String containing the markup used to render the DetailsView at design time.
Beispiele
Das folgende Codebeispiel zeigt, wie die GetDesignTimeHtml Methode in einer von der DetailsViewDesigner Klasse geerbten Klasse überschreibt, um die Darstellung des DetailsView Steuerelements zur Entwurfszeit zu ändern. Im Beispiel wird dem Raster eine neue erste Zeile hinzugefügt, die die Caption Eigenschaft enthält, falls dies Caption definiert ist. Wenn die BorderStyle Eigenschaft des Steuerelements, das von DetailsView diesem abgeleitet wird, der NotSet Oder-Wert None ist, zeichnet dies GetDesignTimeHtml einen blauen gestrichelten Rahmen um das Steuerelement, um dessen Ausmaß sichtbarer zu machen. Die Laufzeitdarstellung des Steuerelements wird nicht geändert.
// Generate the design-time markup.
const string capTag = "caption";
const string trOpen = "tr><td colspan=2 align=center";
const string trClose = "td></tr";
public override string GetDesignTimeHtml()
{
// Make the full extent of the control more visible in the designer.
// If the border style is None or NotSet, change the border to
// a wide, blue, dashed line. Include the caption within the border.
MyDetailsView myDV = (MyDetailsView)Component;
string markup = null;
int charX;
// Check if the border style should be changed.
if (myDV.BorderStyle == BorderStyle.NotSet ||
myDV.BorderStyle == BorderStyle.None)
{
BorderStyle oldBorderStyle = myDV.BorderStyle;
Unit oldBorderWidth = myDV.BorderWidth;
Color oldBorderColor = myDV.BorderColor;
// Set design-time properties and catch any exceptions.
try
{
myDV.BorderStyle = BorderStyle.Dashed;
myDV.BorderWidth = Unit.Pixel(3);
myDV.BorderColor = Color.Blue;
// Call the base method to generate the markup.
markup = base.GetDesignTimeHtml();
}
catch (Exception ex)
{
markup = GetErrorDesignTimeHtml(ex);
}
finally
{
// Restore the properties to their original settings.
myDV.BorderStyle = oldBorderStyle;
myDV.BorderWidth = oldBorderWidth;
myDV.BorderColor = oldBorderColor;
}
}
else
{
// Call the base method to generate the markup.
markup = base.GetDesignTimeHtml();
}
// Look for a <caption> tag.
if ((charX = markup.IndexOf(capTag)) > 0)
{
// Replace the first caption with
// "tr><td colspan=2 align=center".
markup = markup.Remove(charX,
capTag.Length).Insert(charX, trOpen);
// Replace the second caption with "td></tr".
if ((charX = markup.IndexOf(capTag, charX)) > 0)
markup = markup.Remove(charX,
capTag.Length).Insert(charX, trClose);
}
return markup;
} // GetDesignTimeHtml
' Generate the design-time markup.
Private Const capTag As String = "caption"
Private Const trOpen As String = "tr><td colspan=2 align=center"
Private Const trClose As String = "td></tr"
Public Overrides Function GetDesignTimeHtml() As String
' Make the full extent of the control more visible in the designer.
' If the border style is None or NotSet, change the border to
' a wide, blue, dashed line. Include the caption within the border.
Dim myDV As MyDetailsView = CType(Component, MyDetailsView)
Dim markup As String = Nothing
Dim charX As Integer
' Check if the border style should be changed.
If (myDV.BorderStyle = BorderStyle.NotSet Or _
myDV.BorderStyle = BorderStyle.None) Then
Dim oldBorderStyle As BorderStyle = myDV.BorderStyle
Dim oldBorderWidth As Unit = myDV.BorderWidth
Dim oldBorderColor As Color = myDV.BorderColor
' Set design-time properties and catch any exceptions.
Try
myDV.BorderStyle = BorderStyle.Dashed
myDV.BorderWidth = Unit.Pixel(3)
myDV.BorderColor = Color.Blue
' Call the base method to generate the markup.
markup = MyBase.GetDesignTimeHtml()
Catch ex As Exception
markup = GetErrorDesignTimeHtml(ex)
Finally
' Restore the properties to their original settings.
myDV.BorderStyle = oldBorderStyle
myDV.BorderWidth = oldBorderWidth
myDV.BorderColor = oldBorderColor
End Try
Else
' Call the base method to generate the markup.
markup = MyBase.GetDesignTimeHtml()
End If
' Look for a <caption> tag.
charX = markup.IndexOf(capTag)
If charX > 0 Then
' Replace the first caption with
' "tr><td colspan=2 align=center".
markup = markup.Remove(charX, _
capTag.Length).Insert(charX, trOpen)
' Replace the second caption with "td></tr".
charX = markup.IndexOf(capTag, charX)
If charX > 0 Then
markup = markup.Remove(charX, _
capTag.Length).Insert(charX, trClose)
End If
End If
Return markup
End Function ' GetDesignTimeHtml
Hinweise
Zuerst legt die GetDesignTimeHtml() Methode die AutoGenerateRows Eigenschaft des DetailsView Steuerelements auf true, wenn die Fields Auflistung leer ist. Anschließend GetDesignTimeHtml wird die DataKeyNames Auflistung des GetDesignTimeHtml Steuerelements auf ein leeres String Array festgelegt, wenn das Schema der Datenquelle nicht abgerufen werden kann. Es aktualisiert das TypeDescriptor Objekt, um zu erzwingen, dass die PreFilterProperties Methode aufgerufen wird. Anschließend wird die Basismethode aufgerufen, um das Markup zu generieren.
Hinweise für Vererber
Wenn Sie die GetDesignTimeHtml() Methode außer Kraft setzen, müssen Sie die Basismethode aufrufen, da sie schließlich über mehrere Überschreibungsebenen das DetailsView Steuerelement oder eine Kopie des Steuerelements aufruft, um das Markup zu generieren.
Weitere Informationen
Gilt für:
GetDesignTimeHtml(DesignerRegionCollection)
Ruft das Markup ab, das zum Rendern 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
A DesignerRegionCollection , dem Definitionen der auswählbaren und klickbaren Bereiche in der Entwurfszeitansicht des Steuerelements hinzugefügt werden sollen.
Gibt zurück
A String containing the markup used to render the DetailsView at design time.
Beispiele
Das folgende Codebeispiel zeigt, wie sie die GetDesignTimeHtml Methode in einer Klasse überschreiben, die von der DetailsViewDesigner Klasse geerbt wird, um die Darstellung des DetailsView Steuerelements zur Entwurfszeit zu ändern. Im Beispiel wird dem Raster eine neue erste Zeile hinzugefügt, die die Caption Eigenschaft enthält, falls dies Caption definiert ist. Wenn die BorderStyle Eigenschaft des Steuerelements, das von dem NoneDetailsViewNotSet Oder-Wert abgeleitet wird, zeichnet die GetDesignTimeHtml Eigenschaft einen blauen gestrichelten Rahmen um das Steuerelement, um dessen Ausmaß sichtbarer zu machen. Die Laufzeitdarstellung des Steuerelements wird nicht geändert.
// Generate the design-time markup.
const string capTag = "caption";
const string trOpen = "tr><td colspan=2 align=center";
const string trClose = "td></tr";
public override string GetDesignTimeHtml()
{
// Make the full extent of the control more visible in the designer.
// If the border style is None or NotSet, change the border to
// a wide, blue, dashed line. Include the caption within the border.
MyDetailsView myDV = (MyDetailsView)Component;
string markup = null;
int charX;
// Check if the border style should be changed.
if (myDV.BorderStyle == BorderStyle.NotSet ||
myDV.BorderStyle == BorderStyle.None)
{
BorderStyle oldBorderStyle = myDV.BorderStyle;
Unit oldBorderWidth = myDV.BorderWidth;
Color oldBorderColor = myDV.BorderColor;
// Set design-time properties and catch any exceptions.
try
{
myDV.BorderStyle = BorderStyle.Dashed;
myDV.BorderWidth = Unit.Pixel(3);
myDV.BorderColor = Color.Blue;
// Call the base method to generate the markup.
markup = base.GetDesignTimeHtml();
}
catch (Exception ex)
{
markup = GetErrorDesignTimeHtml(ex);
}
finally
{
// Restore the properties to their original settings.
myDV.BorderStyle = oldBorderStyle;
myDV.BorderWidth = oldBorderWidth;
myDV.BorderColor = oldBorderColor;
}
}
else
{
// Call the base method to generate the markup.
markup = base.GetDesignTimeHtml();
}
// Look for a <caption> tag.
if ((charX = markup.IndexOf(capTag)) > 0)
{
// Replace the first caption with
// "tr><td colspan=2 align=center".
markup = markup.Remove(charX,
capTag.Length).Insert(charX, trOpen);
// Replace the second caption with "td></tr".
if ((charX = markup.IndexOf(capTag, charX)) > 0)
markup = markup.Remove(charX,
capTag.Length).Insert(charX, trClose);
}
return markup;
} // GetDesignTimeHtml
' Generate the design-time markup.
Private Const capTag As String = "caption"
Private Const trOpen As String = "tr><td colspan=2 align=center"
Private Const trClose As String = "td></tr"
Public Overrides Function GetDesignTimeHtml() As String
' Make the full extent of the control more visible in the designer.
' If the border style is None or NotSet, change the border to
' a wide, blue, dashed line. Include the caption within the border.
Dim myDV As MyDetailsView = CType(Component, MyDetailsView)
Dim markup As String = Nothing
Dim charX As Integer
' Check if the border style should be changed.
If (myDV.BorderStyle = BorderStyle.NotSet Or _
myDV.BorderStyle = BorderStyle.None) Then
Dim oldBorderStyle As BorderStyle = myDV.BorderStyle
Dim oldBorderWidth As Unit = myDV.BorderWidth
Dim oldBorderColor As Color = myDV.BorderColor
' Set design-time properties and catch any exceptions.
Try
myDV.BorderStyle = BorderStyle.Dashed
myDV.BorderWidth = Unit.Pixel(3)
myDV.BorderColor = Color.Blue
' Call the base method to generate the markup.
markup = MyBase.GetDesignTimeHtml()
Catch ex As Exception
markup = GetErrorDesignTimeHtml(ex)
Finally
' Restore the properties to their original settings.
myDV.BorderStyle = oldBorderStyle
myDV.BorderWidth = oldBorderWidth
myDV.BorderColor = oldBorderColor
End Try
Else
' Call the base method to generate the markup.
markup = MyBase.GetDesignTimeHtml()
End If
' Look for a <caption> tag.
charX = markup.IndexOf(capTag)
If charX > 0 Then
' Replace the first caption with
' "tr><td colspan=2 align=center".
markup = markup.Remove(charX, _
capTag.Length).Insert(charX, trOpen)
' Replace the second caption with "td></tr".
charX = markup.IndexOf(capTag, charX)
If charX > 0 Then
markup = markup.Remove(charX, _
capTag.Length).Insert(charX, trClose)
End If
End If
Return markup
End Function ' GetDesignTimeHtml
Hinweise
Die DetailsViewDesigner.GetDesignTimeHtml Methode ruft die DetailsViewDesigner.GetDesignTimeHtml Methode auf, um das Markup für das Entwurfszeitrendering des DetailsView Steuerelements zu generieren. Die DetailsViewDesigner.GetDesignTimeHtml Methode füllt auch mit einem DesignerRegion Objekt für jeden klickbaren oder auswählbaren Bereich des Entwurfszeitrenderings regions auf.
Für die DetailsViewZelle ist die erste Zelle in jeder Zeile auswählbar; alle Zellen in den Zeilen können geklickt werden.
Hinweise für Vererber
Wenn Sie die GetDesignTimeHtml(DesignerRegionCollection) Methode außer Kraft setzen, müssen Sie unbedingt die Basismethode oder die GetDesignTimeHtml() Überladung aufrufen, da sie schließlich über mehrere Überschreibungsebenen das DetailsView Steuerelement oder eine Kopie des Steuerelements aufrufen, um das Markup zu generieren.