次の方法で共有


HyperLinkDesigner.GetDesignTimeHtml メソッド

定義

デザイン時に関連付けられたコントロールを描画するために使用するマークアップを取得します。

public:
 override System::String ^ GetDesignTimeHtml();
public override string GetDesignTimeHtml ();
override this.GetDesignTimeHtml : unit -> string
Public Overrides Function GetDesignTimeHtml () As String

戻り値

String

関連付けられたハイパーリンク コントロールをデザイン時に表示するためのマークアップを格納している文字列。

次のコード例は、クラスからクラスを CustomHyperLinkDesigner 派生させる方法を HyperLinkDesigner 示しています。 元の値TextTextが空のGetDesignTimeHtml文字列 ("") の場合は、プロパティの既定値を指定するメソッドをオーバーライドします。 これにより、関連付けられているコントロールがデザイン時に確実に表示されます。

このコード例は、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 コントロールのデザイン時マークアップを生成します。 メソッドは、最初に、子コレクションと同様に Text、、 NavigateUrl、および ImageUrl プロパティのローカル コピーを Controls 保存します。 元の値が空白の場合は、これらのプロパティの既定値が提供されます null 。 その後、このメソッドは GetDesignTimeHtml 基本メソッドを GetDesignTimeHtml 呼び出してマークアップを生成し、必要に応じてプロパティと子コントロール コレクションを元の値に復元します。

適用対象

こちらもご覧ください