PropertyTabAttribute Oluşturucular

Tanım

PropertyTabAttribute sınıfının yeni bir örneğini başlatır.

Aşırı Yüklemeler

PropertyTabAttribute()

PropertyTabAttribute sınıfının yeni bir örneğini başlatır.

PropertyTabAttribute(String)

Belirtilen sekme sınıfı adını kullanarak sınıfın PropertyTabAttribute yeni bir örneğini başlatır.

PropertyTabAttribute(Type)

Belirtilen sekme türünü kullanarak sınıfın PropertyTabAttribute yeni bir örneğini başlatır.

PropertyTabAttribute(String, PropertyTabScope)

Belirtilen sekme sınıfı adını ve sekme kapsamını kullanarak sınıfın PropertyTabAttribute yeni bir örneğini başlatır.

PropertyTabAttribute(Type, PropertyTabScope)

Belirtilen sekme ve sekme kapsamı türünü kullanarak sınıfın yeni bir örneğini PropertyTabAttribute başlatır.

PropertyTabAttribute()

Kaynak:
PropertyTabAttribute.cs
Kaynak:
PropertyTabAttribute.cs
Kaynak:
PropertyTabAttribute.cs

PropertyTabAttribute sınıfının yeni bir örneğini başlatır.

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

Açıklamalar

Bu, başlatılmamış bir oluşturan parametresiz bir oluşturucudur PropertyTabAttribute. Bu oluşturucu, bu öznitelikten türetmek ve çağrısı InitializeArraysyaparak birden çok sekme türü belirtmek için kullanılabilir.

Ayrıca bkz.

Şunlara uygulanır

PropertyTabAttribute(String)

Kaynak:
PropertyTabAttribute.cs
Kaynak:
PropertyTabAttribute.cs
Kaynak:
PropertyTabAttribute.cs

Belirtilen sekme sınıfı adını kullanarak sınıfın PropertyTabAttribute yeni bir örneğini başlatır.

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

Parametreler

tabClassName
String

Oluşturulacak sekme türünün derleme tam adı. Bu biçim kuralı örneği için bkz AssemblyQualifiedName. .

Şunlara uygulanır

PropertyTabAttribute(Type)

Kaynak:
PropertyTabAttribute.cs
Kaynak:
PropertyTabAttribute.cs
Kaynak:
PropertyTabAttribute.cs

Belirtilen sekme türünü kullanarak sınıfın PropertyTabAttribute yeni bir örneğini başlatır.

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

Parametreler

tabClass
Type

Oluşturulacak sekme türü.

Şunlara uygulanır

PropertyTabAttribute(String, PropertyTabScope)

Kaynak:
PropertyTabAttribute.cs
Kaynak:
PropertyTabAttribute.cs
Kaynak:
PropertyTabAttribute.cs

Belirtilen sekme sınıfı adını ve sekme kapsamını kullanarak sınıfın PropertyTabAttribute yeni bir örneğini başlatır.

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)

Parametreler

tabClassName
String

Oluşturulacak sekme türünün derleme tam adı. Bu biçim kuralı örneği için bkz AssemblyQualifiedName. .

tabScope
PropertyTabScope

PropertyTabScope Bu sekmenin kapsamını gösteren bir. Kapsam iseComponent, yalnızca karşılık gelen PropertyTabAttributebileşenleri için gösterilir. ise Document, belgedeki tüm bileşenler için gösterilir.

Özel durumlar

tabScopeveya ComponentdeğildirDocument.

Şunlara uygulanır

PropertyTabAttribute(Type, PropertyTabScope)

Kaynak:
PropertyTabAttribute.cs
Kaynak:
PropertyTabAttribute.cs
Kaynak:
PropertyTabAttribute.cs

Belirtilen sekme ve sekme kapsamı türünü kullanarak sınıfın yeni bir örneğini PropertyTabAttribute başlatır.

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)

Parametreler

tabClass
Type

Oluşturulacak sekme türü.

tabScope
PropertyTabScope

PropertyTabScope Bu sekmenin kapsamını gösteren bir. Kapsam iseComponent, yalnızca karşılık gelen PropertyTabAttributebileşenleri için gösterilir. ise Document, belgedeki tüm bileşenler için gösterilir.

Özel durumlar

tabScopeveya ComponentdeğildirDocument.

Örnekler

Aşağıdaki kod örneği, bir özellik sekmesi belirtmek için öğesinin nasıl kullanılacağını PropertyTabAttribute gösterir.

#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.
    [PropertyTabAttribute(typeof(TypeCategoryTab), PropertyTabScope.Document)]
    public class TypeCategoryTabComponent : System.ComponentModel.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 System.ComponentModel.PropertyDescriptorCollection GetProperties(object component, System.Attribute[] attributes)
        {
            PropertyDescriptorCollection props;
            if( attributes == null )
                props = TypeDescriptor.GetProperties(component);    
            else
                props = 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 System.ComponentModel.PropertyDescriptorCollection GetProperties(object component)
        {                     
            return this.GetProperties(component, null);
        }

        // Provides the name for the property tab.
        public override string TabName
        {
            get
            {
                return "Properties by Type";
            }
        }

        // Provides an image for the property tab.
        public override System.Drawing.Bitmap Bitmap
        {
            get
            {
                Bitmap bmp = new Bitmap(@"myproperty.bmp", true);
                return bmp;
            }
        }
    }
}

Şunlara uygulanır