IDesignerFilter.PostFilterAttributes(IDictionary) Metoda

Definicja

Po zastąpieniu w klasie pochodnej umożliwia projektantowi zmianę lub usunięcie elementów z zestawu atrybutów, które uwidacznia za pośrednictwem klasy TypeDescriptor.

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

Parametry

attributes
IDictionary

Obiekty Attribute dla klasy składnika. Klucze w słowniku atrybutów są TypeId wartościami atrybutów.

Uwagi

Ta metoda umożliwia zmianę lub usunięcie elementów w słowniku atrybutów, które skojarzony składnik projektanta implementujący ten interfejs uwidacznia za pośrednictwem elementu TypeDescriptor.

Klucze w słowniku atrybutów są identyfikatorami typów atrybutów. Obiekty są typu Attribute. Ta metoda jest wywoływana natychmiast po PreFilterAttributes.

Identyfikator typu atrybutu może być dowolnym obiektem. Domyślnie Attribute funkcja zwraca wartość właściwości TypeId .Type Można sprawdzić TypeId atrybut w słowniku pod kątem równoważności ze znanym TypeId atrybutem, aby go zidentyfikować, lub użyć System.Reflection do identyfikowania samego obiektu atrybutu.

Gdy atrybut, który ma taki sam TypeId jak istniejący lub dziedziczony atrybut jest dodawany do składnika, nowy atrybut zastępuje stary atrybut. W przypadku wielu atrybutów nowy atrybut tego samego typu zastąpi wszystkie poprzednie atrybuty typu. Jednak niektóre typy atrybutów zwracają TypeId atrybut, który rozróżnia atrybut selektywnie. Na przykład w celu zapewnienia różnych typów jednocześnie aktywnych projektantów dla typu, takiego jak i IRootDesignerIDesigner, klasa zwraca klasęTypeId, DesignerAttribute która jednoznacznie identyfikuje zarówno atrybut, jak i typ projektanta podstawowego. Konstruktor DesignerAttribute pozwala określić typ projektanta podstawowego oprócz określonego typu i DesignerAttribute zwraca wartość TypeId , która to odzwierciedla. W związku z tym podczas dodawania nowego DesignerAttribute typu projektanta podstawowego tego samego typu co typ projektanta podstawowego istniejącego DesignerAttributeatrybut starego atrybutu jest zastępowany nowym atrybutem.

Uwagi dotyczące implementowania

Możesz bezpośrednio filtrować słownik dostępny za pośrednictwem parametru attributes lub pozostawić go bez zmian. Jeśli zastępujesz tę metodę, wywołaj implementację podstawową po wykonaniu własnego filtrowania.

Dotyczy

Zobacz też