Freigeben über


IDesignerFilter.PreFilterAttributes(IDictionary) Methode

Definition

Ermöglicht es einem Designer, beim Überschreiben in einer abgeleiteten Klasse den über einen TypeDescriptor verfügbar gemachten Attributen Elemente hinzuzufügen.

public:
 void PreFilterAttributes(System::Collections::IDictionary ^ attributes);
public void PreFilterAttributes (System.Collections.IDictionary attributes);
abstract member PreFilterAttributes : System.Collections.IDictionary -> unit
Public Sub PreFilterAttributes (attributes As IDictionary)

Parameter

attributes
IDictionary

Die Attribute-Objekte für die Klasse der Komponente. Die Schlüssel im Attributwörterbuch sind die TypeId-Werte der Attribute.

Hinweise

Diese Methode bietet eine Möglichkeit, dem Wörterbuch der Attribute Elemente hinzuzufügen, die die zugeordnete Komponente des Designers, die diese Schnittstelle implementiert, über ein TypeDescriptorverfügbar macht.

Die Schlüssel im Wörterbuch der Attribute sind die Typ-IDs der Attribute. Die -Objekte sind vom Typ Attribute. Diese Methode wird unmittelbar vor PostFilterAttributesaufgerufen.

Die Typ-ID eines Attributs kann ein beliebiges Objekt sein. Gibt standardmäßig Attribute als Type Wert seiner TypeId Eigenschaft zurück. Sie können das TypeId Attribut eines Attributs im Wörterbuch auf Äquivalenz mit einem für ein Attribut bekannten TypeId überprüfen, um es zu identifizieren, oder System.Reflection verwenden, um das Attributobjekt selbst zu identifizieren.

Wenn ein Attribut, das dasselbe TypeId wie ein vorhandenes oder geerbtes Attribut aufweist, einer Komponente hinzugefügt wird, ersetzt das neue Attribut das alte Attribut. Bei vielen Attributen ersetzt ein neues Attribut desselben Typs jedes vorherige Attribut des Typs. Einige Typen von Attributen geben jedoch einen TypeId zurück, der das Attribut selektiv unterscheidet. Um beispielsweise verschiedene Typen von gleichzeitig aktiven Designern für einen Typ wie ein IRootDesigner und einen IDesignerbereitzustellen, gibt die Klasse einen zurückTypeId, der DesignerAttribute sowohl das Attribut als auch den Basis-Designertyp eindeutig identifiziert. Der DesignerAttribute Konstruktor ermöglicht es Ihnen, den Basis-Designertyp des Designers zusätzlich zu seinem spezifischen Typ anzugeben, und DesignerAttribute gibt einen TypeId zurück, der dies widerspiegelt. Wenn Sie daher einen neuen DesignerAttribute mit einem Basis-Designer-Typ hinzufügen, der denselben Typ wie der Basis-Designertyp eines vorhandenen DesignerAttributetyps aufweist, wird das alte Attribut durch das neue Attribut ersetzt.

Hinweise für Ausführende

Sie können das Wörterbuch direkt filtern, auf das über den attributes Parameter zugegriffen werden kann, oder Sie können es unverändert lassen. Wenn Sie diese Methode überschreiben, rufen Sie die Basisimplementierung auf, nachdem Sie ihre eigene Filterung durchgeführt haben.

Gilt für:

Weitere Informationen