PropertyTabAttribute コンストラクター

定義

PropertyTabAttribute クラスの新しいインスタンスを初期化します。

オーバーロード

名前 説明
PropertyTabAttribute()

PropertyTabAttribute クラスの新しいインスタンスを初期化します。

PropertyTabAttribute(String)

指定したタブ クラス名を使用して、 PropertyTabAttribute クラスの新しいインスタンスを初期化します。

PropertyTabAttribute(Type)

指定した種類のタブを使用して、 PropertyTabAttribute クラスの新しいインスタンスを初期化します。

PropertyTabAttribute(String, PropertyTabScope)

指定したタブ クラス名とタブ スコープを使用して、 PropertyTabAttribute クラスの新しいインスタンスを初期化します。

PropertyTabAttribute(Type, PropertyTabScope)

指定した種類のタブとタブ スコープを使用して、 PropertyTabAttribute クラスの新しいインスタンスを初期化します。

PropertyTabAttribute()

ソース:
PropertyTabAttribute.cs
ソース:
PropertyTabAttribute.cs
ソース:
PropertyTabAttribute.cs
ソース:
PropertyTabAttribute.cs
ソース:
PropertyTabAttribute.cs

PropertyTabAttribute クラスの新しいインスタンスを初期化します。

public:
 PropertyTabAttribute();
public PropertyTabAttribute();
Public Sub New ()

注釈

これは、初期化されていない PropertyTabAttributeを作成するパラメーターなしのコンストラクターです。 このコンストラクターを使用して、この属性から派生させ、 InitializeArraysを呼び出して複数のタブ型を指定できます。

こちらもご覧ください

適用対象

PropertyTabAttribute(String)

ソース:
PropertyTabAttribute.cs
ソース:
PropertyTabAttribute.cs
ソース:
PropertyTabAttribute.cs
ソース:
PropertyTabAttribute.cs
ソース:
PropertyTabAttribute.cs

指定したタブ クラス名を使用して、 PropertyTabAttribute クラスの新しいインスタンスを初期化します。

public:
 PropertyTabAttribute(System::String ^ tabClassName);
public PropertyTabAttribute(string tabClassName);
new System.ComponentModel.PropertyTabAttribute : string -> System.ComponentModel.PropertyTabAttribute
Public Sub New (tabClassName As String)

パラメーター

tabClassName
String

作成するタブの種類のアセンブリ修飾名。 この形式規則の例については、 AssemblyQualifiedNameを参照してください。

適用対象

PropertyTabAttribute(Type)

ソース:
PropertyTabAttribute.cs
ソース:
PropertyTabAttribute.cs
ソース:
PropertyTabAttribute.cs
ソース:
PropertyTabAttribute.cs
ソース:
PropertyTabAttribute.cs

指定した種類のタブを使用して、 PropertyTabAttribute クラスの新しいインスタンスを初期化します。

public:
 PropertyTabAttribute(Type ^ tabClass);
public PropertyTabAttribute(Type tabClass);
new System.ComponentModel.PropertyTabAttribute : Type -> System.ComponentModel.PropertyTabAttribute
Public Sub New (tabClass As Type)

パラメーター

tabClass
Type

作成するタブの種類。

適用対象

PropertyTabAttribute(String, PropertyTabScope)

ソース:
PropertyTabAttribute.cs
ソース:
PropertyTabAttribute.cs
ソース:
PropertyTabAttribute.cs
ソース:
PropertyTabAttribute.cs
ソース:
PropertyTabAttribute.cs

指定したタブ クラス名とタブ スコープを使用して、 PropertyTabAttribute クラスの新しいインスタンスを初期化します。

public:
 PropertyTabAttribute(System::String ^ tabClassName, System::ComponentModel::PropertyTabScope tabScope);
public PropertyTabAttribute(string tabClassName, System.ComponentModel.PropertyTabScope tabScope);
new System.ComponentModel.PropertyTabAttribute : string * System.ComponentModel.PropertyTabScope -> System.ComponentModel.PropertyTabAttribute
Public Sub New (tabClassName As String, tabScope As PropertyTabScope)

パラメーター

tabClassName
String

作成するタブの種類のアセンブリ修飾名。 この形式規則の例については、 AssemblyQualifiedNameを参照してください。

tabScope
PropertyTabScope

このタブのスコープを示す PropertyTabScope 。スコープが Component場合は、対応する PropertyTabAttributeを持つコンポーネントに対してのみ表示されます。 Documentされている場合は、ドキュメント上のすべてのコンポーネントに対して表示されます。

例外

tabScopeDocument または Componentではありません。

適用対象

PropertyTabAttribute(Type, PropertyTabScope)

ソース:
PropertyTabAttribute.cs
ソース:
PropertyTabAttribute.cs
ソース:
PropertyTabAttribute.cs
ソース:
PropertyTabAttribute.cs
ソース:
PropertyTabAttribute.cs

指定した種類のタブとタブ スコープを使用して、 PropertyTabAttribute クラスの新しいインスタンスを初期化します。

public:
 PropertyTabAttribute(Type ^ tabClass, System::ComponentModel::PropertyTabScope tabScope);
public PropertyTabAttribute(Type tabClass, System.ComponentModel.PropertyTabScope tabScope);
new System.ComponentModel.PropertyTabAttribute : Type * System.ComponentModel.PropertyTabScope -> System.ComponentModel.PropertyTabAttribute
Public Sub New (tabClass As Type, tabScope As PropertyTabScope)

パラメーター

tabClass
Type

作成するタブの種類。

tabScope
PropertyTabScope

このタブのスコープを示す PropertyTabScope 。スコープが Component場合は、対応する PropertyTabAttributeを持つコンポーネントに対してのみ表示されます。 Documentされている場合は、ドキュメント上のすべてのコンポーネントに対して表示されます。

例外

tabScopeDocument または Componentではありません。

次のコード例では、 PropertyTabAttribute を使用してプロパティ タブを指定する方法を示します。

#using <System.Windows.Forms.dll>
#using <System.Drawing.dll>
#using <System.dll>

using namespace System;
using namespace System::ComponentModel;
using namespace System::ComponentModel::Design;
using namespace System::Drawing;
using namespace System::IO;
using namespace System::Reflection;
using namespace System::Runtime::Serialization;
using namespace System::Runtime::Serialization::Formatters::Binary;
using namespace System::Windows::Forms;
using namespace System::Windows::Forms::Design;
using namespace System::Security::Permissions;

namespace TypeCategoryTabExample
{
   ref class TypeCategoryTab;

   // forward declaration.
   // This component adds a TypeCategoryTab to the propery browser
   // that is available for any components in the current design mode document.

   [PropertyTabAttribute(TypeCategoryTabExample::TypeCategoryTab::typeid,PropertyTabScope::Document)]
   public ref class TypeCategoryTabComponent: public System::ComponentModel::Component
   {
   public:
      TypeCategoryTabComponent(){}
   };

   // A TypeCategoryTab property tab lists properties by the
   // category of the type of each property.
   public ref class TypeCategoryTab: public PropertyTab
   {
   private:

      // This String^ contains a Base-64 encoded and serialized example property tab image.

      [BrowsableAttribute(true)]
      String^ img;

   public:
      TypeCategoryTab()
      {
         img = "AAEAAAD/////AQAAAAAAAAAMAgAAAFRTeXN0ZW0uRHJhd2luZywgVmVyc2lvbj0xLjAuMzMwMC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWIwM2Y1ZjdmMTFkNTBhM2EFAQAAABVTeXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgIAAAAJAwAAAA8DAAAA9gAAAAJCTfYAAAAAAAAANgAAACgAAAAIAAAACAAAAAEAGAAAAAAAAAAAAMQOAADEDgAAAAAAAAAAAAD///////////////////////////////////9ZgABZgADzPz/zPz/zPz9AgP//////////gAD/gAD/AAD/AAD/AACKyub///////+AAACAAAAAAP8AAP8AAP9AgP////////9ZgABZgABz13hz13hz13hAgP//////////gAD/gACA/wCA/wCA/wAA//////////+AAACAAAAAAP8AAP8AAP9AgP////////////////////////////////////8L";
      }

      // Returns the properties of the specified component extended with
      // a CategoryAttribute reflecting the name of the type of the property.
      [ReflectionPermission(SecurityAction::Demand, Flags=ReflectionPermissionFlag::MemberAccess)]
      virtual System::ComponentModel::PropertyDescriptorCollection^ GetProperties( Object^ component, array<System::Attribute^>^attributes ) override
      {
         PropertyDescriptorCollection^ props;
         if ( attributes == nullptr )
                  props = TypeDescriptor::GetProperties( component );
         else
                  props = TypeDescriptor::GetProperties( component, attributes );

         array<PropertyDescriptor^>^propArray = gcnew array<PropertyDescriptor^>(props->Count);
         for ( int i = 0; i < props->Count; i++ )
         {
            // Create a new PropertyDescriptor from the old one, with
            // a CategoryAttribute matching the name of the type.
            array<Attribute^>^temp0 = {gcnew CategoryAttribute( props[ i ]->PropertyType->Name )};
            propArray[ i ] = TypeDescriptor::CreateProperty( props[ i ]->ComponentType, props[ i ], temp0 );

         }
         return gcnew PropertyDescriptorCollection( propArray );
      }

      virtual System::ComponentModel::PropertyDescriptorCollection^ GetProperties( Object^ component ) override
      {
         return this->GetProperties( component, nullptr );
      }

      property String^ TabName 
      {
         // Provides the name for the property tab.
         virtual String^ get() override
         {
            return "Properties by Type";
         }
      }
   };
}
using System.ComponentModel;
using System.Drawing;
using System.Windows.Forms.Design;

namespace TypeCategoryTabExample;

// This component adds a TypeCategoryTab to the property browser 
// that is available for any components in the current design mode document.
[PropertyTab(typeof(TypeCategoryTab), PropertyTabScope.Document)]
public class TypeCategoryTabComponent : Component
{
    public TypeCategoryTabComponent()
    {
    }
}

// A TypeCategoryTab property tab lists properties by the 
// category of the type of each property.
public class TypeCategoryTab : PropertyTab
{
    public TypeCategoryTab()
    {
    }

    // Returns the properties of the specified component extended with 
    // a CategoryAttribute reflecting the name of the type of the property.
    public override PropertyDescriptorCollection GetProperties(object component, System.Attribute[] attributes)
    {
        PropertyDescriptorCollection props = attributes == null ? TypeDescriptor.GetProperties(component) : TypeDescriptor.GetProperties(component, attributes);
        PropertyDescriptor[] propArray = new PropertyDescriptor[props.Count];
        for (int i = 0; i < props.Count; i++)
        {
            // Create a new PropertyDescriptor from the old one, with 
            // a CategoryAttribute matching the name of the type.
            propArray[i] = TypeDescriptor.CreateProperty(props[i].ComponentType, props[i], new CategoryAttribute(props[i].PropertyType.Name));
        }
        return new PropertyDescriptorCollection(propArray);
    }

    public override PropertyDescriptorCollection GetProperties(object component) => GetProperties(component, null);

    // Provides the name for the property tab.
    public override string TabName => "Properties by Type";

    // Provides an image for the property tab.
    public override Bitmap Bitmap => new("myproperty.bmp", true);
}

適用対象