DesignerCategoryAttribute Класс

Определение

Указывает, что конструктор для класса относится к определенной категории.Specifies that the designer for a class belongs to a certain category.

public ref class DesignerCategoryAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Class, AllowMultiple=false, Inherited=true)]
public sealed class DesignerCategoryAttribute : Attribute
type DesignerCategoryAttribute = class
    inherit Attribute
Public NotInheritable Class DesignerCategoryAttribute
Inherits Attribute
Наследование
DesignerCategoryAttribute
Атрибуты

Примеры

В следующем примере создается класс с именем MyForm.The following example creates a class called MyForm. MyFormимеет DesignerAttribute два атрибута, указывающие, что этот класс DocumentDesignerиспользует, Form и DesignerCategoryAttribute , указывающий категорию.MyForm has two attributes, a DesignerAttribute that specifies this class uses the DocumentDesigner, and a DesignerCategoryAttribute that specifies the Form category.

[Designer("System.Windows.Forms.Design.DocumentDesigner, System.Windows.Forms.Design",
IRootDesigner::typeid),
DesignerCategory("Form")]
ref class MyForm: public ContainerControl{
   // Insert code here.
};
[Designer("System.Windows.Forms.Design.DocumentDesigner, System.Windows.Forms.Design", 
    typeof(IRootDesigner)),
    DesignerCategory("Form")]
    
 public class MyForm : ContainerControl {
    // Insert code here.
 }
<Designer("System.Windows.Forms.Design.DocumentDesigner, System.Windows.Forms.Design", _
    GetType(IRootDesigner)), DesignerCategory("Form")> _
Public Class MyForm
    
    Inherits ContainerControl
    ' Insert code here.
End Class

В следующем примере создается экземпляр MyForm.The next example creates an instance of MyForm. Затем он получает атрибуты для класса, извлекает DesignerCategoryAttributeи выводит имя конструктора.Then it gets the attributes for the class, extracts the DesignerCategoryAttribute, and prints the name of the designer.

int main()
{
   // Creates a new form.
   MyForm^ myNewForm = gcnew MyForm;

   // Gets the attributes for the collection.
   AttributeCollection^ attributes = TypeDescriptor::GetAttributes( myNewForm );

   /* Prints the name of the designer by retrieving the 
       * DesignerCategoryAttribute from the AttributeCollection. */
   DesignerCategoryAttribute^ myAttribute = dynamic_cast<DesignerCategoryAttribute^>(attributes[ DesignerCategoryAttribute::typeid ]);
   Console::WriteLine( "The category of the designer for this class is: {0}", myAttribute->Category );
   return 0;
}
public static int Main() {
    // Creates a new form.
    MyForm myNewForm = new MyForm();
 
    // Gets the attributes for the collection.
    AttributeCollection attributes = TypeDescriptor.GetAttributes(myNewForm);
 
    /* Prints the name of the designer by retrieving the 
     * DesignerCategoryAttribute from the AttributeCollection. */
    DesignerCategoryAttribute myAttribute = 
       (DesignerCategoryAttribute)attributes[typeof(DesignerCategoryAttribute)];
    Console.WriteLine("The category of the designer for this class is: " + myAttribute.Category);
  
    return 0;
}
Public Shared Function Main() As Integer
    ' Creates a new form.
    Dim myNewForm As New MyForm()
    
    ' Gets the attributes for the collection.
    Dim attributes As AttributeCollection = TypeDescriptor.GetAttributes(myNewForm)
    
    ' Prints the name of the designer by retrieving the
    ' DesignerCategoryAttribute from the AttributeCollection. 
    Dim myAttribute As DesignerCategoryAttribute = _
        CType(attributes(GetType(DesignerCategoryAttribute)), DesignerCategoryAttribute)
    Console.WriteLine(("The category of the designer for this class is: " + myAttribute.Category))
    Return 0
End Function 'Main

Комментарии

Визуальный конструктор может использовать категорию конструктора для информирования среды разработки типа конструктора, который будет реализован.A visual designer can use a designer category to inform a development environment of the type of designer that will be implemented. Если в классе не указана категория конструктора, среда разработки может разрешить или не разрешать разработку класса.If no designer category is provided on a class, a development environment may or may not allow the class to be designed. Категорию можно создать для любого имени.A category can be created for any name.

При пометке класса с помощью этого атрибута ему присваивается постоянный элемент.When you mark a class with this attribute, it is set to a constant member. Если требуется проверить значение этого атрибута в коде, необходимо указать постоянный элемент.When you want to check the value of this attribute in your code, you must specify the constant member. В столбце Описание в таблице ниже приводится элемент Constant, для каждого значения которого задано значение.The Description column in the table below lists the constant member that each value is set to.

DesignerCategoryAttribute Класс определяет следующие общие категории:The DesignerCategoryAttribute class defines the following common categories:

КатегорияCategory ОписаниеDescription
КомпонентComponent Конструкторы, используемые с компонентами.Designers that are used with components. Атрибуту задается константный элемент DesignerCategoryAttribute.Component.The attribute is set to the constant member DesignerCategoryAttribute.Component.
FormForm Конструкторы, используемые с формами.Designers that are used with forms. Атрибуту задается константный элемент DesignerCategoryAttribute.Form.The attribute is set to the constant member DesignerCategoryAttribute.Form.
DesignerDesigner Конструкторы, используемые с конструкторами.Designers that are used with designers. Атрибуту задается константный элемент DesignerCategoryAttribute.Generic.The attribute is set to the constant member DesignerCategoryAttribute.Generic.
Пустая строка ("")Empty String ("") Это категория по умолчанию.This is the default category.

Дополнительные сведения см. в разделе Атрибуты.For more information, see Attributes.

Конструкторы

DesignerCategoryAttribute()

Инициализирует новый экземпляр класса DesignerCategoryAttribute, используя пустую строку ("").Initializes a new instance of the DesignerCategoryAttribute class with an empty string ("").

DesignerCategoryAttribute(String)

Инициализирует новый экземпляр класса DesignerCategoryAttribute, используя данное имя категории.Initializes a new instance of the DesignerCategoryAttribute class with the given category name.

Поля

Component

Указывает, что компонент, отмеченный этой категорией, использует конструктор компонентов.Specifies that a component marked with this category use a component designer. Это поле доступно только для чтения.This field is read-only.

Default

Определяет, что компонент, отмеченный этой категорией, не может использовать визуальный конструктор.Specifies that a component marked with this category cannot use a visual designer. Это статическое (static) поле доступно только для чтения.This static field is read-only.

Form

Указывает, что компонент, отмеченный этой категорией, использует конструктор форм.Specifies that a component marked with this category use a form designer. Это статическое (static) поле доступно только для чтения.This static field is read-only.

Generic

Указывает, что компонент, отмеченный этой категорией, использует универсальный конструктор.Specifies that a component marked with this category use a generic designer. Это статическое (static) поле доступно только для чтения.This static field is read-only.

Свойства

Category

Возвращает имя категории.Gets the name of the category.

TypeId

Возвращает уникальный идентификатор для этого атрибута.Gets a unique identifier for this attribute.

Методы

Equals(Object)

Возвращает значение, показывающее, равно ли значение данного объекта текущему атрибуту DesignOnlyAttribute.Returns whether the value of the given object is equal to the current DesignOnlyAttribute.

GetHashCode()

Возвращает хэш-код данного экземпляра.Returns the hash code for this instance.

GetType()

Возвращает объект Type для текущего экземпляра.Gets the Type of the current instance.

(Унаследовано от Object)
IsDefaultAttribute()

Определяет, является ли этот атрибут используемым по умолчанию.Determines if this attribute is the default.

Match(Object)

При переопределении в производном классе возвращает значение, указывающее, является ли этот экземпляр равным заданному объекту.When overridden in a derived class, returns a value that indicates whether this instance equals a specified object.

(Унаследовано от Attribute)
MemberwiseClone()

Создает неполную копию текущего объекта Object.Creates a shallow copy of the current Object.

(Унаследовано от Object)
ToString()

Возвращает строку, представляющую текущий объект.Returns a string that represents the current object.

(Унаследовано от Object)

Явные реализации интерфейса

_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Сопоставляет набор имен соответствующему набору идентификаторов диспетчеризации.Maps a set of names to a corresponding set of dispatch identifiers.

(Унаследовано от Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Возвращает сведения о типе объекта, которые можно использовать для получения сведений о типе интерфейса.Retrieves the type information for an object, which can be used to get the type information for an interface.

(Унаследовано от Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Возвращает количество предоставляемых объектом интерфейсов для доступа к сведениям о типе (0 или 1).Retrieves the number of type information interfaces that an object provides (either 0 or 1).

(Унаследовано от Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Предоставляет доступ к открытым свойствам и методам объекта.Provides access to properties and methods exposed by an object.

(Унаследовано от Attribute)

Применяется к

Дополнительно