IDesignerFilter.PreFilterAttributes(IDictionary) Metodo

Definizione

Quando viene sottoposto a override in una classe derivata, consente di aggiungere, mediante una finestra di progettazione, elementi all'insieme di attributi esposti tramite un oggetto TypeDescriptor.

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)

Parametri

attributes
IDictionary

Oggetti Attribute relativi alla classe del componente. Le chiavi presenti nel dizionario degli attributi sono i valori TypeId degli attributi.

Commenti

Questo metodo consente di aggiungere elementi al dizionario degli attributi che il componente associato della finestra di progettazione che implementa questa interfaccia espone tramite un TypeDescriptoroggetto .

Le chiavi nel dizionario degli attributi sono gli ID di tipo degli attributi. Gli oggetti sono di tipo Attribute. Questo metodo viene chiamato immediatamente prima PostFilterAttributesdi .

L'ID di tipo di un attributo può essere qualsiasi oggetto. Per impostazione predefinita, Attribute restituisce il valore Type della relativa TypeId proprietà. È possibile controllare l'oggetto di un attributo nel dizionario per l'equivalenza TypeId con un attributo noto TypeId per identificarlo o usarlo System.Reflection per identificare l'oggetto attributo stesso.

Quando un attributo con lo stesso TypeId attributo esistente o ereditato viene aggiunto a un componente, il nuovo attributo sostituisce l'attributo precedente. Per molti attributi, un nuovo attributo dello stesso tipo sostituirà qualsiasi attributo precedente del tipo. Tuttavia, alcuni tipi di attributi restituiscono un oggetto TypeId che distingue l'attributo in modo selettivo. Ad esempio, per fornire diversi tipi di finestre di progettazione attive simultaneamente per un tipo, ad esempio un IRootDesigner oggetto e , IDesignerla DesignerAttribute classe restituisce un TypeId oggetto che identifica in modo univoco sia l'attributo che il tipo di progettazione di base. Il DesignerAttribute costruttore consente di specificare il tipo di finestra di progettazione di base della finestra di progettazione oltre al relativo tipo specifico e DesignerAttribute restituisce un oggetto TypeId che riflette questo tipo. Pertanto, quando si aggiunge un nuovo DesignerAttribute con un tipo di progettazione di base dello stesso tipo di progettazione base di un tipo di progettazione di base di un attributo esistente DesignerAttribute, l'attributo precedente viene sostituito con il nuovo attributo.

Note per gli implementatori

È possibile filtrare direttamente il dizionario accessibile tramite il attributes parametro oppure lasciarlo invariato. Se si esegue l'override di questo metodo, chiamare l'implementazione di base dopo aver eseguito il filtro personalizzato.

Si applica a

Vedi anche