EditorAttribute Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Задает редактор, используемый для изменения свойства. Этот класс не может быть унаследован.
public ref class EditorAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.All, AllowMultiple=true, Inherited=true)]
public sealed class EditorAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.All, AllowMultiple=true, Inherited=true)>]
type EditorAttribute = class
inherit Attribute
Public NotInheritable Class EditorAttribute
Inherits Attribute
- Наследование
- Атрибуты
Примеры
В следующем примере кода создается MyImage класс. Класс помечен как EditorAttributeImageEditor редактор.
[Editor("System.Windows.Forms.ImageEditorIndex, System.Design",
UITypeEditor::typeid)]
public ref class MyImage{
// Insert code here.
};
[Editor("System.Windows.Forms.ImageEditorIndex, System.Design",
typeof(UITypeEditor))]
public class MyImage
{
// Insert code here.
}
<Editor("System.Windows.Forms.ImageEditorIndex, System.Design", _
GetType(UITypeEditor))> _
Public Class MyImage
' Insert code here.
End Class
В следующем примере кода создается экземпляр MyImage класса, получает атрибуты для класса, а затем выводится имя редактора, используемого myNewImage.
int main()
{
// Creates a new component.
MyImage^ myNewImage = gcnew MyImage;
// Gets the attributes for the component.
AttributeCollection^ attributes = TypeDescriptor::GetAttributes( myNewImage );
/* Prints the name of the editor by retrieving the EditorAttribute
* from the AttributeCollection. */
EditorAttribute^ myAttribute = dynamic_cast<EditorAttribute^>(attributes[ EditorAttribute::typeid ]);
Console::WriteLine( "The editor for this class is: {0}", myAttribute->EditorTypeName );
return 0;
}
public static int Main()
{
// Creates a new component.
MyImage myNewImage = new();
// Gets the attributes for the component.
AttributeCollection attributes = TypeDescriptor.GetAttributes(myNewImage);
/* Prints the name of the editor by retrieving the EditorAttribute
* from the AttributeCollection. */
EditorAttribute myAttribute = (EditorAttribute)attributes[typeof(EditorAttribute)];
Console.WriteLine("The editor for this class is: " + myAttribute.EditorTypeName);
return 0;
}
Public Shared Sub Main()
' Creates a new component.
Dim myNewImage As New MyImage()
' Gets the attributes for the component.
Dim attributes As AttributeCollection = TypeDescriptor.GetAttributes(myNewImage)
' Prints the name of the editor by retrieving the EditorAttribute
' from the AttributeCollection.
Dim myAttribute As EditorAttribute = CType(attributes(GetType(EditorAttribute)), EditorAttribute)
Console.WriteLine(("The editor for this class is: " & myAttribute.EditorTypeName))
End Sub
Комментарии
При редактировании свойства визуальный конструктор должен создать новый экземпляр указанного редактора через диалоговое окно или раскрывающееся окно.
EditorBaseTypeName Используйте свойство, чтобы найти базовый тип этого редактора. Единственным доступным базовым типом является UITypeEditor.
EditorTypeName Используйте свойство, чтобы получить имя типа редактора, связанного с этим атрибутом.
Общие сведения об использовании атрибутов. см . раздел "Атрибуты". Дополнительные сведения об атрибутах времени разработки см. в разделе "Атрибуты" и Design-Time поддержки.
Конструкторы
| Имя | Описание |
|---|---|
| EditorAttribute() |
Инициализирует новый экземпляр EditorAttribute класса с помощью редактора по умолчанию, который не является редактором. |
| EditorAttribute(String, String) |
Инициализирует новый экземпляр EditorAttribute класса с именем типа и именем базового типа редактора. |
| EditorAttribute(String, Type) |
Инициализирует новый экземпляр EditorAttribute класса с именем типа и базовым типом. |
| EditorAttribute(Type, Type) |
Инициализирует новый экземпляр EditorAttribute класса с типом и базовым типом. |
Свойства
| Имя | Описание |
|---|---|
| EditorBaseTypeName |
Возвращает имя базового класса или интерфейса, выступающего в качестве ключа подстановки для этого редактора. |
| EditorTypeName |
Возвращает имя класса редактора AssemblyQualifiedName в формате. |
| TypeId |
Возвращает уникальный идентификатор для этого типа атрибута. |
Методы
| Имя | Описание |
|---|---|
| Equals(Object) |
Возвращает значение, равное ли заданному объекту текущее EditorAttributeзначение. |
| GetHashCode() |
Возвращает хэш-код для этого экземпляра. |
| GetType() |
Возвращает Type текущего экземпляра. (Унаследовано от Object) |
| IsDefaultAttribute() |
При переопределении в производном классе указывает, является ли значение этого экземпляра значением по умолчанию для производного класса. (Унаследовано от Attribute) |
| Match(Object) |
При переопределении в производном классе возвращает значение, указывающее, равен ли этот экземпляр указанному объекту. (Унаследовано от Attribute) |
| MemberwiseClone() |
Создает неглубокую копию текущей Object. (Унаследовано от Object) |
| ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |
Явные реализации интерфейса
| Имя | Описание |
|---|---|
| _Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Сопоставляет набор имен соответствующему набору идентификаторов диспетчеризации. (Унаследовано от Attribute) |
| _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) |
Извлекает сведения о типе объекта, который можно использовать для получения сведений о типе для интерфейса. (Унаследовано от Attribute) |
| _Attribute.GetTypeInfoCount(UInt32) |
Возвращает количество предоставляемых объектом интерфейсов для доступа к сведениям о типе (0 или 1). (Унаследовано от Attribute) |
| _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Предоставляет доступ к свойствам и методам, предоставляемым объектом. (Унаследовано от Attribute) |