HyperLinkDesigner.GetDesignTimeHtml 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
取得在設計階段用來呈現關聯控制項的標記。
public:
override System::String ^ GetDesignTimeHtml();
public override string GetDesignTimeHtml ();
override this.GetDesignTimeHtml : unit -> string
Public Overrides Function GetDesignTimeHtml () As String
傳回
字串,包含在設計階段用來呈現關聯超連結控制項的標記。
範例
下列程式碼範例示範如何從 HyperLinkDesigner 類別衍生 CustomHyperLinkDesigner
類別。 如果 的原始值為 Text 空字串,則會覆寫 GetDesignTimeHtml 方法,以提供 屬性的預設值 Text (「」) 。 這可確保在設計階段會顯示相關聯的控制項。
此程式碼範例是針對 類別提供的較大範例的 HyperLinkDesigner 一部分。
// 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 控制項的設計階段標記。 方法會先儲存 、 NavigateUrl 和 ImageUrl 屬性的本機複本 Text ,以及 Controls 子集合。 如果原始值為 null
或空白,則會提供這些屬性的預設值。 然後,方法 GetDesignTimeHtml 會呼叫 GetDesignTimeHtml 基底方法來產生標記,並視需要將屬性和子控制項集合還原至其原始值。