ComEventInterfaceAttribute Класс

Определение

Внимание!

ComEventInterfaceAttribute may be unavailable in future releases.

Определяет исходный интерфейс и класс, реализующий методы интерфейса событий, созданного при импорте компонентного класса из библиотеки типов COM.

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

Комментарии

Этот атрибут можно применить к интерфейсам, хотя Tlbimp.exe (средство импорта библиотек типов) обычно применяет его при импорте библиотеки типов.

При импорте исходного интерфейса из библиотеки типов все реализуемые методы добавляются в качестве событий в созданный интерфейс событий. Tlbimp.exe применяется ComEventInterfaceAttribute к интерфейсу событий для идентификации управляемого класса, реализующего методы интерфейса события и реализующего исходный интерфейс. Среда CLR использует этот атрибут во время выполнения для выполнения следующих задач:

  • Свяжите события, предоставляемые интерфейсом, с их реализацией в классе поставщика событий.

  • Свяжите события с исходным интерфейсом COM.

Этот атрибут редко применяется. Однако если планируется написать исходный код, который создает метаданные, которые тесно имитируют метаданные, созданные Tlbimp.exe, следует создать интерфейс событий для каждого исходного исходного интерфейса. Подробное описание того, как Tlbimp.exe импортируют события, см. в разделе "Импортированное преобразование элементов". Инструкции о том, как предоставить com-событие клиенту .NET, см. в разделе "Практическое руководство. Обработка событий, вызванных com-источником".

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

ComEventInterfaceAttribute(Type, Type)

Инициализирует новый экземпляр класса ComEventInterfaceAttribute, используя интерфейс источника и класс поставщика событий.

Свойства

EventProvider

Возвращает класс, реализующий методы интерфейса события.

SourceInterface

Возвращает исходный интерфейс источника из библиотеки типов.

TypeId

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

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

Методы

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)

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

См. также раздел