HyperLinkDesigner.GetDesignTimeHtml 方法
定义
获取用于在设计时呈现关联控件的标记。Gets the markup that is used to render the associated control at design time.
public:
override System::String ^ GetDesignTimeHtml();
public override string GetDesignTimeHtml ();
override this.GetDesignTimeHtml : unit -> string
Public Overrides Function GetDesignTimeHtml () As String
返回
包含用于在设计时呈现关联的超链接控件的标记的字符串。A string containing the markup used to render the associated hyperlink control at design time.
示例
下面的代码示例演示如何 CustomHyperLinkDesigner 从类派生类 HyperLinkDesigner 。The following code example shows how to derive the CustomHyperLinkDesigner class from the HyperLinkDesigner class. GetDesignTimeHtml Text 如果的原始值 Text 为空字符串 ( "" ) ,它将重写方法以提供属性的默认值。It overrides the GetDesignTimeHtml method to supply a default value for the Text property if the original value for Text is an empty string (""). 这确保了关联控件在设计时可见。This ensures that the associated control will be visible at design time.
此代码示例是为类提供的更大示例的一部分 HyperLinkDesigner 。This code example is part of a larger example provided for the HyperLinkDesigner class.
// Derive the CustomHyperLinkDesigner from the HyperLinkDesigner.
public class CustomHyperLinkDesigner : HyperLinkDesigner
{
// Override the GetDesignTimeHtml to set the CustomHyperLink Text
// property so that it displays at design time.
public override string GetDesignTimeHtml()
{
CustomHyperLink hype = (CustomHyperLink)Component;
string designTimeMarkup = null;
// Save the original Text and note if it is empty.
string text = hype.Text;
bool noText = (text.Trim().Length == 0);
try
{
// If the Text is empty, supply a default value.
if (noText)
hype.Text = "Click here.";
// Call the base method to generate the markup.
designTimeMarkup = base.GetDesignTimeHtml();
}
catch (Exception ex)
{
// If an error occurs, generate the markup for an error message.
designTimeMarkup = GetErrorDesignTimeHtml(ex);
}
finally
{
// Restore the original value of the Text, if necessary.
if (noText)
hype.Text = text;
}
// If the markup is empty, generate the markup for a placeholder.
if(designTimeMarkup == null || designTimeMarkup.Length == 0)
designTimeMarkup = GetEmptyDesignTimeHtml();
return designTimeMarkup;
} // GetDesignTimeHtml
} // CustomHyperLinkDesigner
' Derive the CustomHyperLinkDesigner from the HyperLinkDesigner.
Public Class CustomHyperLinkDesigner
Inherits HyperLinkDesigner
' Override the GetDesignTimeHtml to set the CustomHyperLink Text
' property so that it displays at design time.
Public Overrides Function GetDesignTimeHtml() As String
Dim hype As CustomHyperLink = CType(Component, CustomHyperLink)
Dim designTimeMarkup As String = Nothing
' Save the original Text and note if it is empty.
Dim text As String = hype.Text
Dim noText As Boolean = (text.Trim().Length = 0)
Try
' If the Text is empty, supply a default value.
If noText Then
hype.Text = "Click here."
End If
' Call the base method to generate the markup.
designTimeMarkup = MyBase.GetDesignTimeHtml()
Catch ex As Exception
' If an error occurs, generate the markup for an error message.
designTimeMarkup = GetErrorDesignTimeHtml(ex)
Finally
' Restore the original value of the Text, if necessary.
If noText Then
hype.Text = text
End If
End Try
' If the markup is empty, generate the markup for a placeholder.
If ((designTimeMarkup = Nothing) Or _
(designTimeMarkup.Length = 0)) Then
designTimeMarkup = GetEmptyDesignTimeHtml()
End If
Return designTimeMarkup
End Function ' GetDesignTimeHtml
End Class
注解
GetDesignTimeHtml方法为关联的控件生成设计时标记 HyperLink 。The GetDesignTimeHtml method generates the design-time markup for the associated HyperLink control. 方法首先保存、和属性的本地副本以及 Text NavigateUrl ImageUrl Controls 子集合。The method first saves local copies of the Text, NavigateUrl, and ImageUrl properties, as well as the Controls child collection. 如果原始值为或空白,则为这些属性提供默认值 null 。It provides default values for these properties if the original values are null or blank. GetDesignTimeHtml然后,方法会调用 GetDesignTimeHtml 基方法来生成标记,并在必要时将属性和子控件集合还原为其原始值。The GetDesignTimeHtml method then calls the GetDesignTimeHtml base method to generate the markup and restores the properties and child control collection to their original values, if necessary.