SupportsPreviewControlAttributeとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > SupportsPreviewControlAttributeの意味・解説 

SupportsPreviewControlAttribute クラス

メモ : このクラスは、.NET Framework version 2.0 で新しく追加されたものです。

コントロール デザイナでデザイン時にコントロールのプレビュー インスタンスが必要かどうかを示します。このクラスは継承できません。

名前空間: System.Web.UI.Design
アセンブリ: System.Design (system.design.dll 内)
構文構文

<AttributeUsageAttribute(AttributeTargets.Class)> _
Public NotInheritable Class
 SupportsPreviewControlAttribute
    Inherits Attribute
Dim instance As SupportsPreviewControlAttribute
[AttributeUsageAttribute(AttributeTargets.Class)] 
public sealed class SupportsPreviewControlAttribute
 : Attribute
[AttributeUsageAttribute(AttributeTargets::Class)] 
public ref class SupportsPreviewControlAttribute
 sealed : public Attribute
/** @attribute AttributeUsageAttribute(AttributeTargets.Class) */ 
public final class SupportsPreviewControlAttribute
 extends Attribute
AttributeUsageAttribute(AttributeTargets.Class) 
public final class SupportsPreviewControlAttribute
 extends Attribute
解説解説

コントロール デザイナでサポートされているプレビュー コントロールの型を示すには、SupportsPreviewControlAttribute 属性をコントロール デザイナ クラスに適用します。この属性は、関連付けられているコントロールで実際に保持されているインスタンスに影響を与えることなく、デザイン時表示のプレビュー コントロールを変更するために使用します。

通常、ControlDesigner クラスから派生したカスタム デザイナ クラスを宣言するときには、SupportsPreviewControlAttribute を指定します。SupportsPreviewControlAttribute 属性の SupportsPreviewControl プロパティの値によって、基本クラス ControlDesigner の UsePreviewControl メンバと ViewControl メンバの動作が決まります。

デザイナが、関連付けられたコントロールの一時的なコピーを使用してデザイン時の HTML を生成することを示す場合は、SupportsPreviewControl プロパティを true に設定します。一時コントロールへの変更は保持されません。

デザイナで、ViewControl メソッドからコントロール インスタンス (特に Component プロパティ) を返すことを示す場合は、SupportsPreviewControl プロパティを false に設定します。コントロール オブジェクトへの変更は保持されます。

たとえば CalendarDesigner クラスは、SupportsPreviewControlAttribute の値が true に設定されてマークされます。デザイナは、スタイルの自動書式指定タスクでプレビュー コントロールを使用します。これによりユーザーは、カレンダーに適用できるさまざまな自動フォーマット スタイルのプレビューを実行できます。ユーザーが異なる自動フォーマット スタイルをユーザー インターフェイスで選択すると、選択したスタイルのスキームがプレビュー コントロールに適用されます。新しいスタイルをプレビュー コントロールに適用しても、デザイナの Calendar コントロールのインスタンスに適用されたスキームは変更されません。

コントロール デザイナの宣言で SupportsPreviewControlAttribute が指定されていない場合、ControlDesigner の動作は、SupportsPreviewControl を false に指定することに相当します。

メモメモ

ControlDesigner クラスから派生したデザイナ クラスは、UsePreviewControl メンバと ViewControl メンバをオーバーライドし、SupportsPreviewControlAttribute 属性を無視できます。ViewControl と UsePreviewControl の必要とされる動作を確認するには、派生したコントロール デザイナ クラスのリファレンス ドキュメントを参照してください。

属性の使用方法の概要については、「属性の概要」および「属性を使用したメタデータの拡張」を参照してください。デザイン時の属性の詳細については、「属性とデザイン時サポート」を参照してください。

使用例使用例

SupportsPreviewControlAttribute 属性でコントロール デザイナをマークする方法を次のコード例に示します。このコード例では、Label クラスから ASP.NET サーバー コントロールを派生し、カスタム コントロール デザイナの実装に関連付けます。コントロール デザイナ クラスの宣言は、SupportsPreviewControl 属性を true に設定してマークされます。コントロール デザイナは、GetDesignTimeHtml メソッドをオーバーライドし、コントロールのデザイン時の HTML を斜体タグで囲みます。

Imports Microsoft.VisualBasic
Imports System
Imports System.ComponentModel
Imports System.ComponentModel.Design
Imports System.Web.UI
Imports System.Web.UI.Design
Imports System.Web.UI.Design.WebControls
Imports System.Web.UI.WebControls
Imports System.Reflection

Namespace ControlDesignerSamples.VB

    ' Derive a simple Web control from Label to render a text string.
    ' Associate this control with the SimpleTextControlDesigner.
    <DesignerAttribute("ControlDesignerSamples.CS.SimpleTextControlDesigner"),
 _
    ToolboxData("<{0}:MyLabelControl Runat=""Server""><{0}:MyLabelControl>")>
 _
    Public Class MyLabelControl
        Inherits Label

        ' Use the Label control implementation, but associate
        ' the derived class with the custom control designer.
    End Class


    ' Mark the designer with the SupportsPreviewControlAttribute set
    ' to true.  This means the base.UsePreviewControl returns true,
    ' and base.ViewControl returns a temporary preview copy of the control.
    <SupportsPreviewControl(True)> _
    Public Class SimpleTextControlDesigner
        Inherits TextControlDesigner

        ' Override the base GetDesignTimeHtml method to display 
        ' the design time text in italics.
        Public Overrides Function
 GetDesignTimeHtml() As String
            Dim html As String
 = String.Empty

            Try
                ' Get the ViewControl for the associated control.
                Dim ctrl As Label = CType(ViewControl,
 Label)

                ' Set the default text, if necessary
                If ctrl.Text.Length = 0 Then
                    ctrl.Text = "Sample Text"
                End If

                ' Set the style to italic
                ctrl.Style.Add(HtmlTextWriterStyle.FontStyle, "italic")

                ' Let the base class create the HTML markup
                html = MyBase.GetDesignTimeHtml()
            Catch ex As Exception
                If String.IsNullOrEmpty(html)
 Then
                    ' Display the exception message
                    html = GetErrorDesignTimeHtml(ex)
                End If
            End Try

            Return html
        End Function

    End Class
End Namespace
using System;
using System.ComponentModel;
using System.ComponentModel.Design;
using System.Web.UI;
using System.Web.UI.Design;
using System.Web.UI.Design.WebControls;
using System.Web.UI.WebControls;
using System.Reflection;

namespace ControlDesignerSamples.CS
{
    // Define a simple designer associated with a 
    // simple text web control.
    
    // Mark the designer with the SupportsPreviewControlAttribute set
    // to true.  This means the base.UsePreviewControl returns true
,
    // and base.ViewControl returns a temporary preview copy of the
 control.
    [SupportsPreviewControl(true)]
    public class SimpleTextControlDesigner
 : TextControlDesigner
    {        
        // Override the base GetDesignTimeHtml method to display 
        // the design time text in italics.
        public override string GetDesignTimeHtml()
        {
            string html = String.Empty;
 
            try
            {
                // Initialize the return string to the default
                // design time html of the base TextControlDesigner.
                html = base.GetDesignTimeHtml();

                // Get the ViewControl for the associated control.
                Label ctrl = (Label)ViewControl;

                ctrl.Style.Add(HtmlTextWriterStyle.FontStyle, "Italic");
                html = base.GetDesignTimeHtml();

            }
            catch (System.Exception e)
            {
               if (String.IsNullOrEmpty(html))
               {
                   html = GetErrorDesignTimeHtml(e);
               }
            }
            
            return html;
        }

    }

    // Derive a simple Web control from Label to render a text string.
    // Associate this control with the SimpleTextControlDesigner.
    [DesignerAttribute("ControlDesignerSamples.CS.SimpleTextControlDesigner")
,
    ToolboxData("<{0}:MyLabelControl Runat=\"Server\"><{0}:MyLabelControl>")]
    public class MyLabelControl : Label
    {
        // Use the Label control implementation, but associate
        // the derived class with the custom control designer.
    }
}
継承階層継承階層
System.Object
   System.Attribute
    System.Web.UI.Design.SupportsPreviewControlAttribute
スレッド セーフスレッド セーフ
この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバの場合は、スレッド セーフであるとは限りません。
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
SupportsPreviewControlAttribute メンバ
System.Web.UI.Design 名前空間
ControlDesigner.UsePreviewControl プロパティ
ControlDesigner.ViewControl プロパティ
PreviewControlDesigner
その他の技術情報
属性とデザイン時サポート
Web フォームのデザイン時サポート

SupportsPreviewControlAttribute コンストラクタ

メモ : このコンストラクタは、.NET Framework version 2.0 で新しく追加されたものです。

SupportsPreviewControlAttribute クラスの新しいインスタンスを初期化して、SupportsPreviewControl プロパティの初期値を設定します。

名前空間: System.Web.UI.Design
アセンブリ: System.Design (system.design.dll 内)
構文構文

Public Sub New ( _
    supportsPreviewControl As Boolean _
)
Dim supportsPreviewControl As Boolean

Dim instance As New SupportsPreviewControlAttribute(supportsPreviewControl)
public SupportsPreviewControlAttribute (
    bool supportsPreviewControl
)
public:
SupportsPreviewControlAttribute (
    bool supportsPreviewControl
)
public SupportsPreviewControlAttribute (
    boolean supportsPreviewControl
)
public function SupportsPreviewControlAttribute
 (
    supportsPreviewControl : boolean
)

パラメータ

supportsPreviewControl

SupportsPreviewControl に代入する初期値。

解説解説

通常、SupportsPreviewControlAttribute クラスのインスタンスを直接作成する必要はありません。SupportsPreviewControlAttribute を、ソース コードのカスタム コントロール デザイナのクラス宣言に適用します。

.NET Framework のセキュリティ.NET Framework のセキュリティ
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
SupportsPreviewControlAttribute クラス
SupportsPreviewControlAttribute メンバ
System.Web.UI.Design 名前空間

SupportsPreviewControlAttribute フィールド


パブリック フィールドパブリック フィールド

  名前 説明
パブリック フィールド Default プレビューの既定値に設定された SupportsPreviewControlAttribute クラスのインスタンスを取得します。このフィールドは読み取り専用です。
参照参照

関連項目

SupportsPreviewControlAttribute クラス
System.Web.UI.Design 名前空間
ControlDesigner.UsePreviewControl プロパティ
ControlDesigner.ViewControl プロパティ
PreviewControlDesigner

その他の技術情報

属性とデザイン時サポート
Web フォームのデザイン時サポート

SupportsPreviewControlAttribute プロパティ


パブリック プロパティパブリック プロパティ

参照参照

関連項目

SupportsPreviewControlAttribute クラス
System.Web.UI.Design 名前空間
ControlDesigner.UsePreviewControl プロパティ
ControlDesigner.ViewControl プロパティ
PreviewControlDesigner

その他の技術情報

属性とデザイン時サポート
Web フォームのデザイン時サポート

SupportsPreviewControlAttribute メソッド


パブリック メソッドパブリック メソッド

( プロテクト メソッド も参照)
  名前 説明
パブリック メソッド Equals オーバーロードされます。 オーバーライドされます。  
パブリック メソッド GetCustomAttribute  オーバーロードされます。 アセンブリ、モジュール、型のメンバ、またはメソッド パラメータに適用された指定した型のカスタム属性を取得します。 ( Attribute から継承されます。)
パブリック メソッド GetCustomAttributes  オーバーロードされます。 アセンブリ、モジュール、型のメンバ、またはメソッド パラメータに適用されたカスタム属性の配列を取得します。 ( Attribute から継承されます。)
パブリック メソッド GetHashCode オーバーライドされます。 SupportsPreviewControlAttribute クラスのこのインスタンスのハッシュ コードを返します。
パブリック メソッド GetType  現在のインスタンスの Type を取得します。 ( Object から継承されます。)
パブリック メソッド IsDefaultAttribute オーバーライドされます。 SupportsPreviewControlAttribute クラスの現在のインスタンスがプレビュー属性の既定値に設定されるかどうかを示します。
パブリック メソッド IsDefined  オーバーロードされます。 指定した型のカスタム属性が、アセンブリ、モジュール、型のメンバ、またはメソッド パラメータに適用されているかどうかを判断します。 ( Attribute から継承されます。)
パブリック メソッド Match  派生クラス内でオーバーライドされたときに、指定したオブジェクトとこのインスタンスが等しいかどうかを示す値を返します。 ( Attribute から継承されます。)
パブリック メソッド ReferenceEquals  指定した複数の Object インスタンスが同一かどうかを判断します。 ( Object から継承されます。)
パブリック メソッド ToString  現在の Object を表す String を返します。 ( Object から継承されます。)
プロテクト メソッドプロテクト メソッド
参照参照

関連項目

SupportsPreviewControlAttribute クラス
System.Web.UI.Design 名前空間
ControlDesigner.UsePreviewControl プロパティ
ControlDesigner.ViewControl プロパティ
PreviewControlDesigner

その他の技術情報

属性とデザイン時サポート
Web フォームのデザイン時サポート

SupportsPreviewControlAttribute メンバ

コントロール デザイナでデザイン時にコントロールのプレビュー インスタンスが必要かどうかを示します。このクラスは継承できません。

SupportsPreviewControlAttribute データ型で公開されるメンバを以下の表に示します。


パブリック コンストラクタパブリック コンストラクタ
  名前 説明
パブリック メソッド SupportsPreviewControlAttribute SupportsPreviewControlAttribute クラスの新しいインスタンスを初期化して、SupportsPreviewControl プロパティの初期値を設定します。
パブリック フィールドパブリック フィールド
  名前 説明
パブリック フィールド Default プレビューの既定値に設定された SupportsPreviewControlAttribute クラスのインスタンスを取得します。このフィールドは読み取り専用です。
パブリック プロパティパブリック プロパティ
パブリック メソッドパブリック メソッド
( プロテクト メソッド も参照)
  名前 説明
パブリック メソッド Equals オーバーロードされます。 オーバーライドされます。  
パブリック メソッド GetCustomAttribute  オーバーロードされます。 アセンブリ、モジュール、型のメンバ、またはメソッド パラメータに適用された指定した型のカスタム属性を取得します。 (Attribute から継承されます。)
パブリック メソッド GetCustomAttributes  オーバーロードされます。 アセンブリ、モジュール、型のメンバ、またはメソッド パラメータに適用されたカスタム属性の配列を取得します。 (Attribute から継承されます。)
パブリック メソッド GetHashCode オーバーライドされます。 SupportsPreviewControlAttribute クラスのこのインスタンスのハッシュ コードを返します。
パブリック メソッド GetType  現在のインスタンスの Type を取得します。 (Object から継承されます。)
パブリック メソッド IsDefaultAttribute オーバーライドされます。 SupportsPreviewControlAttribute クラスの現在のインスタンスがプレビュー属性の既定値に設定されるかどうかを示します。
パブリック メソッド IsDefined  オーバーロードされます。 指定した型のカスタム属性が、アセンブリ、モジュール、型のメンバ、またはメソッド パラメータに適用されているかどうかを判断します。 (Attribute から継承されます。)
パブリック メソッド Match  派生クラス内でオーバーライドされたときに、指定したオブジェクトとこのインスタンスが等しいかどうかを示す値を返します。 (Attribute から継承されます。)
パブリック メソッド ReferenceEquals  指定した複数の Object インスタンスが同一かどうかを判断します。 (Object から継承されます。)
パブリック メソッド ToString  現在の Object を表す String を返します。 (Object から継承されます。)
プロテクト メソッドプロテクト メソッド
参照参照

関連項目

SupportsPreviewControlAttribute クラス
System.Web.UI.Design 名前空間
ControlDesigner.UsePreviewControl プロパティ
ControlDesigner.ViewControl プロパティ
PreviewControlDesigner

その他の技術情報

属性とデザイン時サポート
Web フォームのデザイン時サポート



英和和英テキスト翻訳

英語⇒日本語日本語⇒英語

辞書ショートカット

すべての辞書の索引

「SupportsPreviewControlAttribute」の関連用語

SupportsPreviewControlAttributeのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



SupportsPreviewControlAttributeのページの著作権

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2026 Microsoft.All rights reserved.

©2026 GRAS Group, Inc.RSS