IDesignerFilter.PreFilterAttributes(IDictionary) 메서드

정의

파생 클래스에서 재정의할 때 디자이너에서 TypeDescriptor를 통해 노출된 특성 집합에 항목을 추가하도록 합니다.When overridden in a derived class, allows a designer to add items to the set of attributes that it exposes through a 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)

매개 변수

attributes
IDictionary

구성 요소의 클래스에 대한 Attribute 개체입니다.The Attribute objects for the class of the component. 특성의 사전에 포함된 키는 특성의 TypeId 값입니다.The keys in the dictionary of attributes are the TypeId values of the attributes.

설명

이 메서드를 통해이 인터페이스를 구현 하는 디자이너의 관련 된 구성 요소를 통해 노출 하는 특성의 사전에 항목을 추가할 수 있는 TypeDescriptor.This method provides a way to add items to the dictionary of attributes that the associated component of the designer implementing this interface exposes through a TypeDescriptor.

특성 사전에 포함 된 키는 특성의 형식 Id입니다.The keys in the dictionary of attributes are the type IDs of the attributes. 형식의 개체는 Attribute합니다.The objects are of type Attribute. 바로 앞에이 메서드는 PostFilterAttributes.This method is called immediately before PostFilterAttributes.

특성의 형식 ID는 모든 개체가 될 수 있습니다.The type ID of an attribute can be any object. 기본적으로 Attribute 반환의 Type 의 값으로는 TypeId 속성입니다.By default, Attribute returns its Type as the value of its TypeId property. 확인할 수는 TypeId 알려진와 같은지 사전에 있는 특성의 TypeId 특성을 식별 하거나, 사용에 대 한 System.Reflection 특성 개체 자체를 식별 하기 위해.You can check the TypeId of an attribute in the dictionary for equivalence with a known TypeId for an attribute to identify it, or use System.Reflection to identify the attribute object itself.

같은 특성 TypeId 기존 또는 상속 된 특성 구성 요소에 추가 되 면 새 특성 이전 특성을 대체 합니다.When an attribute that has the same TypeId as an existing or inherited attribute is added to a component, the new attribute replaces the old attribute. 많은 특성 같은 형식의 새 특성 형식의 이전 특성을 대체 됩니다.For many attributes, a new attribute of the same type will replace any previous attribute of the type. 그러나 특성의 일부 형식은 반환 된 TypeId 특성을 선택적으로 구별 하는.However, some types of attributes return a TypeId that distinguishes the attribute selectively. 예를 들어, 같은 형식의 동시 활성 디자이너의 다양 한 종류를 제공 하기 위해 전자 IRootDesignerIDesigner, DesignerAttribute 반환 클래스는 TypeId 특성과 기본 디자이너 고유 하 게 식별 하는 입력 합니다.For example, in order to provide different types of simultaneously active designers for a type, such as an IRootDesigner and an IDesigner, the DesignerAttribute class returns a TypeId that uniquely identifies both the attribute and the base designer type. DesignerAttribute 생성자를 사용 하면 디자이너의 특정 한 형식 외에도 기본 디자이너 형식을 지정 하 고 DesignerAttribute 반환는 TypeId 이 반영 하.The DesignerAttribute constructor allows you to specify the base designer type of the designer in addition to its specific type, and DesignerAttribute returns a TypeId that reflects this. 따라서 추가 하면 새 DesignerAttribute 같은 기본 디자이너 형식 기존 형식의 기본 디자이너 형식을 사용 하 여 DesignerAttribute, 오래 된 특성이 새 특성으로 대체 됩니다.Therefore when you add a new DesignerAttribute with a base designer type of the same type as the base designer type of an existing DesignerAttribute, the old attribute is replaced with the new attribute.

구현자 참고

직접을 통해 액세스할 수 있는 사전 필터링는 attributes 하거나 매개 변수를 그대로 둘 수 있습니다.You can directly filter the dictionary that is accessible through the attributes parameter, or you can leave it unchanged. 이 메서드를 재정의 하는 경우 필터링을 수행 하 고 나면 기본 구현을 호출 합니다.If you are overriding this method, call the base implementation after you perform your own filtering.

적용 대상

추가 정보