次の方法で共有


TextControlDesigner クラス

ASP.NET Label サーバー コントロールおよび HyperLink サーバー コントロールのデザイン時の動作を拡張します。

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

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
               System.Web.UI.Design.WebControls.LabelDesigner
               System.Web.UI.Design.WebControls.LinkButtonDesigner

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

スレッドセーフ

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

解説

文字列 Text プロパティを持つ実行時のコントロールのデザイナの基本クラスとして、このクラスを使用できます。

使用例

[Visual Basic] LabelDesigner クラスから派生した CustomLabelDesigner カスタム クラスのコード例を次に示します。 LabelDesigner は、 TextControlDesigner から直接派生したクラスであるため、 TextControlDesigner クラスのすべてのメソッドの実装にアクセスすることができます。この場合、CustomLabelDesigner は Initialize メソッドをオーバーライドして、 CustomLabel クラスのインスタンスであるオブジェクト以外がデザイナで作成されないようにします。また、 Verbs プロパティをオーバーライドして、デザイナ動詞 (OnPropertyBuilder という名前のカスタム メソッド) をコレクションに追加します。

 
Imports System
Imports System.Design
Imports System.Drawing
Imports System.ComponentModel
Imports System.Diagnostics
Imports System.Web.UI.WebControls
Imports System.Web.UI.Design.WebControls
Imports Examples.AspNet

Namespace Examples.AspNet.Design

    Public Class SampleLabelDesigner
        Inherits LabelDesigner
        
        ' Override the GetDesignTimeHtml method.
        Public Overrides Function GetDesignTimeHtml() As String

            Dim sampleLabel As SampleLabel = CType(Component, SampleLabel)
            Dim designTimeHtml As String = Nothing
    
            ' Check the control's BorderStyle property
            ' to conditionally render design-time HTML.
            If (sampleLabel.BorderStyle = BorderStyle.NotSet) Then

                ' Create variables to hold current property settings.
                Dim oldBorderStyle As BorderStyle = sampleLabel.BorderStyle
                    
               ' Set properties and the design-time HTML.
                Try
                    sampleLabel.BorderStyle = BorderStyle.Dashed
                    designTimeHtml = MyBase.GetDesignTimeHtml()
                
                ' If an exception occurs, call the GetErrorDesignTimeHtml
                ' method.
                Catch ex As Exception
                    designTimeHtml = GetErrorDesignTimeHtml(ex)

                ' Return properties to their original settings.
                Finally
                    sampleLabel.BorderStyle = oldBorderStyle
                End Try
          
            Else
                designTimeHtml = MyBase.GetDesignTimeHtml()
            End If
      
            Return designTimeHTML
        End Function
    End Class
End Namespace

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

必要条件

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

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

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

参照

TextControlDesigner メンバ | System.Web.UI.Design 名前空間