Diese Dokumentation wurde archiviert und wird nicht länger gepflegt.

TypeDescriptor.GetProperties-Methode (Type, Attribute[])

Gibt die Auflistung von Eigenschaften für einen angegebenen Komponententyp zurück, wobei ein angegebenes Array von Attributen als Filter verwendet wird.

Namespace: System.ComponentModel
Assembly: System (in system.dll)

public static PropertyDescriptorCollection GetProperties (
	Type componentType,
	Attribute[] attributes
)
public static PropertyDescriptorCollection GetProperties (
	Type componentType, 
	Attribute[] attributes
)
public static function GetProperties (
	componentType : Type, 
	attributes : Attribute[]
) : PropertyDescriptorCollection
Nicht zutreffend.

Parameter

componentType

Der Type der Zielkomponente.

attributes

Ein Array vom Typ Attribute, das als Filter verwendet werden soll.

Rückgabewert

Eine PropertyDescriptorCollection mit den Eigenschaften, die mit den angegebenen Attributen für diesen Komponententyp übereinstimmen.

Rufen Sie diese Version der Methode nur dann auf, wenn keine Instanz des Objekts vorhanden ist.

Das attributes-Parameterarray wird zum Filtern des Arrays verwendet. Der Filtervorgang wird durch folgende Regeln definiert:

  • Wenn eine Eigenschaft über keine Attribute-Klasse derselben Klasse verfügt, wird die Eigenschaft nicht in das zurückgegebene Array aufgenommen.

  • Wenn das Attribut eine Instanz der Attribute-Klasse ist, wird die Eigenschaft nur bei exakter Übereinstimmung in das zurückgegebene Array aufgenommen.

  • Wenn eine Attribute-Instanz angegeben ist und es sich um die Standardeigenschaft handelt, wird sie auch dann in das zurückgegebene Array aufgenommen, wenn in der Eigenschaft keine Instanz von Attribute vorhanden ist.

  • Wenn attributes über ein Standardattribut verfügt, beachtet die GetProperties-Methode die Groß- und Kleinschreibung, wenn das Attribut nicht auf die Eigenschaft angewendet wird.

Wenn der componentType-Parameter NULL-Verweis (Nothing in Visual Basic) ist, wird eine leere Auflistung zurückgegeben.

Die Auflistung wird nicht bei jedem Aufruf in der gleichen Reihenfolge zurückgegeben und muss daher vor ihrer Verwendung stets sortiert werden.

Im folgenden Codebeispiel wird das Implementieren der GetProperties-Methode veranschaulicht. Dieses Codebeispiel ist Teil eines umfangreicheren Beispiels für die PropertyTab-Klasse.

// 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);
}

Windows 98, Windows Server 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

Microsoft .NET Framework 3.0 wird unter Windows Vista, Microsoft Windows XP SP2 und Windows Server 2003 SP1 unterstützt.

.NET Framework

Unterstützt in: 3.0, 2.0, 1.1, 1.0
Anzeigen: