Поделиться через


ComDefaultInterfaceAttribute Класс

Определение

Определяет интерфейс по умолчанию, предоставляемый COM. Этот класс не наследуется.

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

Комментарии

Компиляторы не обязательно учитывают порядок реализации интерфейсов. Предположим, что у вас есть следующий код:

interface IBase {}

interface IDerived : IBase {}

class MyClass : IBase, IDerived {}  

Компилятор выдает реализованные интерфейсы в виде IDerived, IBase. Порядок интерфейсов важен при использовании ClassInterfaceAttribute класса с [ClassInterface(ClassInterfaceType.None)] для предоставления явного интерфейса в качестве интерфейса по умолчанию. Независимо от указанного ClassInterfaceType, используйте ComDefaultInterfaceAttribute атрибут , чтобы указать, какой интерфейс следует распознать как интерфейс по умолчанию.

Обратите внимание, что тип, декорированный объектом , ComDefaultInterfaceAttribute должен фактически наследоваться от интерфейса, указанного в качестве интерфейса по умолчанию.

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

ComDefaultInterfaceAttribute(Type)

Инициализирует новый экземпляр класса ComDefaultInterfaceAttribute, используя указанный объект Type в качестве интерфейса по умолчанию, предоставленного COM.

Свойства

TypeId

В случае реализации в производном классе возвращает уникальный идентификатор для этого атрибута Attribute.

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

Получает объект Type, определяющий интерфейс по умолчанию, предоставляемый для COM.

Методы

Equals(Object)

Возвращает значение, показывающее, равен ли экземпляр указанному объекту.

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

Возвращает хэш-код данного экземпляра.

(Унаследовано от Attribute)
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)

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