次の方法で共有


HyperLinkDesigner クラス

HyperLink Web サーバー コントロールのデザイン時の動作を拡張します。

この型のすべてのメンバの一覧については、HyperLinkDesigner メンバ を参照してください。

System.Object
   System.ComponentModel.Design.ComponentDesigner
      System.Web.UI.Design.HtmlControlDesigner
         System.Web.UI.Design.ControlDesigner
            System.Web.UI.Design.TextControlDesigner
               System.Web.UI.Design.WebControls.HyperLinkDesigner

Public Class HyperLinkDesigner
   Inherits TextControlDesigner
[C#]
public class HyperLinkDesigner : TextControlDesigner
[C++]
public __gc class HyperLinkDesigner : public TextControlDesigner
[JScript]
public class HyperLinkDesigner extends TextControlDesigner

スレッドセーフ

この型の public static (Visual Basicでは Shared) のすべてのメンバは、マルチスレッド操作で安全に使用できます。インスタンスのメンバの場合は、スレッドセーフであるとは限りません。

解説

HyperLinkDesigner クラスは、 ControlDesigner クラスの GetDesignTimeHtml メソッドをオーバーライドして、コントロールの空の Text プロパティまたは href プロパティをすべて設定し、デザイン時にコントロールがわかりやすく表示されるようにします。

使用例

[Visual Basic] CustomHyperLinkDesigner という名前のクラスを HyperLinkDesigner クラスから継承して作成するコード例を次に示します。このクラスは、デザイン時に CustomHyperLink クラスを表示するために使用します。

 
' Create a class, named CustomHyperLinkDesigner,
' that derives from the HyperLinkDesigner class.
' This new class displays the custom class,
' CustomHyperLink at design time.
 Public Class CustomHyperLinkDesigner
   Inherits HyperLinkDesigner
   
   
   ' Override the GetDesignTimeHtml method to set the 
   ' string property values of the CustomHyperLink class
   ' so that they will display at design time.
   Public Overrides Function GetDesignTimeHtml() As String
      Dim hl As CustomHyperLink = CType(Component, CustomHyperLink)
      
      Dim designTimeHtml As String = Nothing
      
      Dim text As String = hl.Text
      Dim noText As Boolean = (text.Trim().Length = 0)
      
      Try         
         If noText Then
            hl.Text = "Click here."
         End If 
            
         designTimeHtml = MyBase.GetDesignTimeHtml()
         
      Catch e As New Exception()
         designTimeHtml=GetErrorDesignTimeHtml(e)
      Finally
         If noText Then
           hl.Text = text
         End If
      End Try
      
      If ((designTimeHtml = Nothing) Or (designTimeHtml.Length = 0)) Then
         designTimeHtml = GetEmptyDesignTimeHtml()
      End If
      
      Return designTimeHtml
      
   End Function 
 End Class

[Visual Basic] DesignerAttribute クラスを使用して、 CustomHyperLinkDesigner クラスを CustomHyperLink クラスに関連付けるコード例を次に示します。

 
Imports System
Imports System.ComponentModel
Imports System.Web.UI
Imports System.Web.UI.WebControls

Namespace Examples.AspNet

' Create a CustomHyperLink control  that uses the 
' CustomHyperLinkDesigner and CustomHyperLinkDataBindingHandler
' classes to display its contents at design time.
 <Designer("Examples.AspNet.Design.CustomHyperLinkDesigner", _
  "System.Web.UI.Design.WebControls.HyperLinkDesigner")> _
 Public Class SimpleHyperLink
   Inherits HyperLink
    ' Insert code for custom class here.
 End Class
End Namespace

[C#, C++, JScript] C#、C++、および JScript のサンプルはありません。Visual Basic のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

名前空間: System.Web.UI.Design.WebControls

プラットフォーム: Windows 2000, Windows XP Professional, Windows Server 2003 ファミリ

アセンブリ: System.Design (System.Design.dll 内)

参照

HyperLinkDesigner メンバ | System.Web.UI.Design.WebControls 名前空間 | HyperLink