FormViewDesigner.GetDesignTimeHtml Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Tasarım zamanında ilişkili denetimi işlemek için kullanılan işaretlemeyi alır.
public:
override System::String ^ GetDesignTimeHtml();
public override string GetDesignTimeHtml ();
override this.GetDesignTimeHtml : unit -> string
Public Overrides Function GetDesignTimeHtml () As String
Döndürülenler
String Tasarım zamanında işlemek için kullanılan işaretlemeyi FormView içeren.
Örnekler
Aşağıdaki kod örneği, tasarım zamanında denetimin GetDesignTimeHtml görünümünü değiştirmek için sınıfından devralınan FormViewDesigner bir sınıfta yönteminin FormView nasıl geçersiz kılındığını gösterir. Örnek, tanımlanmışsa Caption özelliğini içerecek Caption şekilde kılavuza yeni bir ilk satır ekler. BorderStyle veya değerinden türetilen FormViewNotSet denetimin özelliği iseNone, GetDesignTimeHtml kapsamını daha görünür hale getirmek için denetimin çevresine mavi kesikli bir kenarlık çizer. Örnek, denetimin çalışma zamanı görünümünü değiştirmez.
// Generate the design-time markup.
const string capTag = "caption";
const string trOpen = "tr><td colspan=9 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.
MyFormView myGV = (MyFormView)Component;
string markup = null;
int charX;
// Check if the border style should be changed.
if (myGV.BorderStyle == BorderStyle.NotSet ||
myGV.BorderStyle == BorderStyle.None)
{
BorderStyle oldBorderStyle = myGV.BorderStyle;
Unit oldBorderWidth = myGV.BorderWidth;
Color oldBorderColor = myGV.BorderColor;
// Set the design-time properties and catch any exceptions.
try
{
myGV.BorderStyle = BorderStyle.Dashed;
myGV.BorderWidth = Unit.Pixel(3);
myGV.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.
myGV.BorderStyle = oldBorderStyle;
myGV.BorderWidth = oldBorderWidth;
myGV.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=9 align=center".
// It is okay if the colspan exceeds the
// number of columns in the table.
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=9 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 myGV As MyFormView = CType(Component, MyFormView)
Dim markup As String = Nothing
Dim charX As Integer
' Check if the border style should be changed.
If (myGV.BorderStyle = BorderStyle.NotSet Or _
myGV.BorderStyle = BorderStyle.None) Then
Dim oldBorderStyle As BorderStyle = myGV.BorderStyle
Dim oldBorderWidth As Unit = myGV.BorderWidth
Dim oldBorderColor As Color = myGV.BorderColor
' Set the design-time properties and catch any exceptions.
Try
myGV.BorderStyle = BorderStyle.Dashed
myGV.BorderWidth = Unit.Pixel(3)
myGV.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.
myGV.BorderStyle = oldBorderStyle
myGV.BorderWidth = oldBorderWidth
myGV.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=9 align=center".
' It is okay if the colspan exceeds the
' number of columns in the table.
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
Açıklamalar
Denetim için FormView bir öğe şablonu tanımlanmışsa, GetDesignTimeHtml veri kaynağı şeması alınamıyorsa yöntemi denetimin koleksiyonunu boş String bir diziye ayarlarDataKeyNames. , GetDesignTimeHtml yönteminin çağrısını TypeDescriptor zorlamak için PreFilterProperties nesnesini yeniler. ardından GetDesignTimeHtml işaretlemeyi oluşturmak için temel yöntemini çağırır.
Denetim için FormView hiçbir öğe şablonu tanımlanmamışsa, GetDesignTimeHtml bir yer tutucuya işlenen işaretleme oluşturmak için yöntemini çağırır GetEmptyDesignTimeHtml .
Devralanlara Notlar
yöntemini geçersiz kılarsanız GetDesignTimeHtml() , temel yöntemi çağırdığınızdan emin olun çünkü sonunda, birkaç geçersiz kılma düzeyi aracılığıyla, işaretlemeyi oluşturmak için denetimin FormView veya denetimin FormView bir kopyasını çağırır.