PropertyTabAttribute Konstruktoren
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Initialisiert eine neue Instanz der PropertyTabAttribute-Klasse.
Überlädt
| Name | Beschreibung |
|---|---|
| PropertyTabAttribute() |
Initialisiert eine neue Instanz der PropertyTabAttribute-Klasse. |
| PropertyTabAttribute(String) |
Initialisiert eine neue Instanz der Klasse mit dem angegebenen Namen der PropertyTabAttribute Registerkartenklasse. |
| PropertyTabAttribute(Type) |
Initialisiert eine neue Instanz der PropertyTabAttribute Klasse mithilfe des angegebenen Registerkartentyps. |
| PropertyTabAttribute(String, PropertyTabScope) |
Initialisiert eine neue Instanz der PropertyTabAttribute Klasse mithilfe des angegebenen Namen der Registerkartenklasse und des Registerkartenbereichs. |
| PropertyTabAttribute(Type, PropertyTabScope) |
Initialisiert eine neue Instanz der PropertyTabAttribute Klasse mithilfe des angegebenen Typs von Registerkarten und Registerkartenbereich. |
PropertyTabAttribute()
Initialisiert eine neue Instanz der PropertyTabAttribute-Klasse.
public:
PropertyTabAttribute();
public PropertyTabAttribute();
Public Sub New ()
Hinweise
Dies ist ein parameterloser Konstruktor, der einen nicht initialisierten PropertyTabAttributeKonstruktor erstellt. Dieser Konstruktor kann verwendet werden, um von diesem Attribut abzuleiten und mehrere Registerkartentypen durch Aufrufen InitializeArraysanzugeben.
Weitere Informationen
Gilt für:
PropertyTabAttribute(String)
Initialisiert eine neue Instanz der Klasse mit dem angegebenen Namen der PropertyTabAttribute Registerkartenklasse.
public:
PropertyTabAttribute(System::String ^ tabClassName);
public PropertyTabAttribute(string tabClassName);
new System.ComponentModel.PropertyTabAttribute : string -> System.ComponentModel.PropertyTabAttribute
Public Sub New (tabClassName As String)
Parameter
- tabClassName
- String
Der assemblyqualifizierte Name des typs der zu erstellenden Registerkarte. Ein Beispiel für diese Formatkonvention finden Sie unter AssemblyQualifiedName.
Gilt für:
PropertyTabAttribute(Type)
Initialisiert eine neue Instanz der PropertyTabAttribute Klasse mithilfe des angegebenen Registerkartentyps.
public:
PropertyTabAttribute(Type ^ tabClass);
public PropertyTabAttribute(Type tabClass);
new System.ComponentModel.PropertyTabAttribute : Type -> System.ComponentModel.PropertyTabAttribute
Public Sub New (tabClass As Type)
Parameter
- tabClass
- Type
Der Typ der zu erstellenden Registerkarte.
Gilt für:
PropertyTabAttribute(String, PropertyTabScope)
Initialisiert eine neue Instanz der PropertyTabAttribute Klasse mithilfe des angegebenen Namen der Registerkartenklasse und des Registerkartenbereichs.
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)
Parameter
- tabClassName
- String
Der assemblyqualifizierte Name des typs der zu erstellenden Registerkarte. Ein Beispiel für diese Formatkonvention finden Sie unter AssemblyQualifiedName.
- tabScope
- PropertyTabScope
Ein PropertyTabScope Wert, der den Bereich dieser Registerkarte angibt. Wenn der Bereich lautet Component, wird er nur für Komponenten mit dem entsprechenden PropertyTabAttributeangezeigt. Wenn dies der Grund ist Document, wird sie für alle Komponenten im Dokument angezeigt.
Ausnahmen
Gilt für:
PropertyTabAttribute(Type, PropertyTabScope)
Initialisiert eine neue Instanz der PropertyTabAttribute Klasse mithilfe des angegebenen Typs von Registerkarten und Registerkartenbereich.
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)
Parameter
- tabClass
- Type
Der Typ der zu erstellenden Registerkarte.
- tabScope
- PropertyTabScope
Ein PropertyTabScope Wert, der den Bereich dieser Registerkarte angibt. Wenn der Bereich lautet Component, wird er nur für Komponenten mit dem entsprechenden PropertyTabAttributeangezeigt. Wenn dies der Grund ist Document, wird sie für alle Komponenten im Dokument angezeigt.
Ausnahmen
Beispiele
Im folgenden Codebeispiel wird die Verwendung der PropertyTabAttribute Eigenschaftsregisterkarte veranschaulicht.
#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);
}