EventInfo EventInfo EventInfo EventInfo Class

정의

이벤트의 특성을 검색하고 이벤트 메타데이터에 액세스할 수 있도록 해줍니다. Discovers the attributes of an event and provides access to event metadata.

public ref class EventInfo abstract : System::Reflection::MemberInfo, System::Runtime::InteropServices::_EventInfo
[System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)]
[System.Runtime.InteropServices.ComVisible(true)]
[Serializable]
public abstract class EventInfo : System.Reflection.MemberInfo, System.Runtime.InteropServices._EventInfo
type EventInfo = class
    inherit MemberInfo
    interface _EventInfo
Public MustInherit Class EventInfo
Inherits MemberInfo
Implements _EventInfo
상속
파생
특성
구현

예제

다음 코드에서는 EventInfo 개체에 대 한는 Click 이벤트는 Button 클래스입니다.The following code gets an EventInfo object for the Click event of the Button class.

#using <System.dll>
#using <System.Windows.Forms.dll>
#using <System.Drawing.dll>

using namespace System;
using namespace System::Reflection;
using namespace System::Security;
using namespace System::Windows::Forms;

int main()
{
   try
   {
      // Creates a bitmask based on BindingFlags.
      BindingFlags myBindingFlags = static_cast<BindingFlags>(BindingFlags::Instance | BindingFlags::Public | BindingFlags::NonPublic);
      Type^ myTypeBindingFlags = System::Windows::Forms::Button::typeid;
      EventInfo^ myEventBindingFlags = myTypeBindingFlags->GetEvent( "Click", myBindingFlags );
      if ( myEventBindingFlags != nullptr )
      {
         Console::WriteLine( "Looking for the Click event in the Button class with the specified BindingFlags." );
         Console::WriteLine( myEventBindingFlags );
      }
      else
            Console::WriteLine( "The Click event is not available with the Button class." );
   }
   catch ( SecurityException^ e ) 
   {
      Console::WriteLine( "An exception occurred." );
      Console::WriteLine( "Message : {0}", e->Message );
   }
   catch ( ArgumentNullException^ e ) 
   {
      Console::WriteLine( "An exception occurred." );
      Console::WriteLine( "Message : {0}", e->Message );
   }
   catch ( Exception^ e ) 
   {
      Console::WriteLine( "The following exception was raised : {0}", e->Message );
   }
}
using System;
using System.Reflection;
using System.Security;

class MyEventExample
{
    public static void Main()
    {  
        try
        {

            // Creates a bitmask based on BindingFlags.
            BindingFlags myBindingFlags = BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic;
            Type myTypeBindingFlags = typeof(System.Windows.Forms.Button);
            EventInfo myEventBindingFlags = myTypeBindingFlags.GetEvent("Click", myBindingFlags);
            if(myEventBindingFlags != null)
            {
                Console.WriteLine("Looking for the Click event in the Button class with the specified BindingFlags.");
                Console.WriteLine(myEventBindingFlags.ToString());
            }
            else
                Console.WriteLine("The Click event is not available with the Button class.");
        }
        catch(SecurityException e)
        {
            Console.WriteLine("An exception occurred.");
            Console.WriteLine("Message :"+e.Message);
        }
        catch(ArgumentNullException e)
        {
            Console.WriteLine("An exception occurred.");
            Console.WriteLine("Message :"+e.Message);
        }
        catch(Exception e)
        {
            Console.WriteLine("The following exception was raised : {0}",e.Message);
        }
    }
}
Imports System
Imports System.Reflection
Imports System.Security
Imports Microsoft.VisualBasic

' Compile this sample using the following command line:
' vbc type_getevent.vb /r:"System.Windows.Forms.dll" /r:"System.dll"

Class MyEventExample
    Public Shared Sub Main()
        Try
            ' Creates a bitmask comprising  BindingFlags.
            Dim myBindingFlags As BindingFlags = BindingFlags.Instance Or BindingFlags.Public _
                                                 Or BindingFlags.NonPublic
            Dim myTypeBindingFlags As Type = GetType(System.Windows.Forms.Button)
            Dim myEventBindingFlags As EventInfo = myTypeBindingFlags.GetEvent("Click", myBindingFlags)
            If myEventBindingFlags IsNot Nothing Then
                Console.WriteLine("Looking for the Click event in the Button class with the specified BindingFlags.")
                Console.WriteLine(myEventBindingFlags.ToString())
            Else
                Console.WriteLine("The Click event is not available with the Button class.")
            End If
        Catch e As SecurityException
            Console.WriteLine("An exception occurred.")
            Console.WriteLine("Message :" + e.Message)
        Catch e As ArgumentNullException
            Console.WriteLine("An exception occurred.")
            Console.WriteLine("Message :" + e.Message)
        Catch e As Exception
            Console.WriteLine("The following exception was raised : {0}", e.Message)
        End Try
    End Sub 'Main
End Class 'MyEventExample

설명

사용 된 EventInfo 클래스에 대 한 예제 코드 에서처럼 이벤트 처리기를 연결 하 고 이벤트를 검사 하는 AddEventHandler 메서드.Use the EventInfo class to inspect events and to hook up event handlers, as shown in the example code for the AddEventHandler method.

참고

EventInfo 이벤트 발생 시키기 위해 사용할 수 없습니다.EventInfo is not intended to be used to raise events. 개체의 내부 상태에 따라 이벤트를 발생 시킵니다.An object raises events as dictated by its internal state.

이벤트는 대리자를 사용 하 여 사용 됩니다.Events are used with delegates. 이벤트 수신기가 이벤트 소스에서 이벤트 발생 될 때마다 호출 되는 이벤트 처리기 대리자를 인스턴스화합니다.An event listener instantiates an event-handler delegate that is invoked whenever the event is raised by an event source. 이벤트 소스에 연결 하려면 이벤트 수신기는 원본 호출 목록에이 대리자를 추가 합니다.In order to connect to the event source, the event listener adds this delegate to the invocation list on the source. 이벤트가 발생 하면 이벤트 처리기 대리자의 invoke 메서드 호출 됩니다.When the event is raised, the invoke method of the event-handler delegate is called. 멀티 캐스트 및 단일 캐스트 이벤트 알림은 모두 지원 됩니다.Both multicast and single-cast event notifications are supported. 합니다 AddRemove 메서드, 뿐만 아니라 이벤트 처리기 대리자 클래스는 이벤트와 연결 된 메타 데이터에 표시 되어야 합니다.The Add and Remove methods, as well as the event-handler delegate class associated with an event, must be marked in the metadata.

대리자는 개체 지향 함수 포인터입니다.Delegates are object-oriented function pointers. C 또는 c + + 함수 포인터를 메서드에 대 한 참조입니다.In C or C++, a function pointer is a reference to a method. C 또는 c + + 함수 포인터와 달리 대리자는 두 개의 참조를 포함 합니다: 메서드는 메서드를 지원 하는 개체에 대 한 참조에 대 한 참조입니다.In contrast to the C or C++ function pointer, a delegate contains two references: a reference to a method and a reference to an object that supports the method. 대리자를 선언 하거나 메서드를 상속 하는 클래스 형식을 모르는 메서드를 호출할 수 있습니다.Delegates can invoke a method without knowing the class type that declares or inherits the method. 대리자 메서드의 반환 형식 및 매개 변수 목록만 알고 있어야 합니다.Delegates need only know the return type and parameter list of the method.

이벤트 모델은 동일 하 게 작동 단일 캐스트 및 멀티 캐스트 대리자에 적합 합니다.The event model works equally well for single-cast and multicast delegates. 대리자의 호출 하는 경우 단일 개체에 메서드를 호출 해야 합니다. 전용 메서드 호출 됩니다.When the delegate's invoke method is called, only a single object will have a method called on it. 한정자를 멀티 캐스트 대리자의 invoke 메서드가 호출 될 때 호출할 여러 메서드를 허용 하는 대리자 선언에 적용할 수 있습니다.A multicast modifier can be applied to a delegate declaration, which allows multiple methods to be called when the invoke method of the delegate is called.

호출 ICustomAttributeProvider.GetCustomAttributesEventInfo 때 합니다 inherit 의 매개 변수 GetCustomAttributestrue 형식 계층 구조를 검색 하지 않습니다.Calling ICustomAttributeProvider.GetCustomAttributes on EventInfo when the inherit parameter of GetCustomAttributes is true does not walk the type hierarchy. 사용 하 여 System.Attribute 사용자 지정 특성을 상속 합니다.Use System.Attribute to inherit custom attributes.

상속자 참고

상속 하는 경우 EventInfo, 멤버를 재정의 해야 합니다. GetAddMethod(Boolean), GetRemoveMethod(Boolean), 및 GetRaiseMethod(Boolean)합니다. When you inherit from EventInfo, you must override the following members: GetAddMethod(Boolean), GetRemoveMethod(Boolean), and GetRaiseMethod(Boolean).

생성자

EventInfo() EventInfo() EventInfo() EventInfo()

EventInfo 클래스의 새 인스턴스를 초기화합니다. Initializes a new instance of the EventInfo class.

속성

AddMethod AddMethod AddMethod AddMethod

비공용 메서드를 포함하여 이벤트의 MethodInfo 메서드에 대한 AddEventHandler(Object, Delegate) 개체를 가져옵니다. Gets the MethodInfo object for the AddEventHandler(Object, Delegate) method of the event, including non-public methods.

Attributes Attributes Attributes Attributes

이 이벤트에 대한 특성을 가져옵니다. Gets the attributes for this event.

CustomAttributes CustomAttributes CustomAttributes CustomAttributes

이 멤버의 사용자 지정 특성을 포함하는 컬렉션을 가져옵니다. Gets a collection that contains this member's custom attributes.

(Inherited from MemberInfo)
DeclaringType DeclaringType DeclaringType DeclaringType

이 멤버를 선언하는 클래스를 가져옵니다. Gets the class that declares this member.

(Inherited from MemberInfo)
EventHandlerType EventHandlerType EventHandlerType EventHandlerType

이 이벤트와 연결된 내부 이벤트 처리기 대리자의 Type 개체를 가져옵니다. Gets the Type object of the underlying event-handler delegate associated with this event.

IsMulticast IsMulticast IsMulticast IsMulticast

이벤트가 멀티캐스트인지 여부를 나타내는 값을 가져옵니다. Gets a value indicating whether the event is multicast.

IsSpecialName IsSpecialName IsSpecialName IsSpecialName

EventInfo의 이름에 특수한 의미가 있는지 여부를 나타내는 값을 가져옵니다. Gets a value indicating whether the EventInfo has a name with a special meaning.

MemberType MemberType MemberType MemberType

이 멤버가 이벤트임을 나타내는 MemberTypes 값을 가져옵니다. Gets a MemberTypes value indicating that this member is an event.

MetadataToken MetadataToken MetadataToken MetadataToken

메타데이터 요소를 식별하는 값을 가져옵니다. Gets a value that identifies a metadata element.

(Inherited from MemberInfo)
Module Module Module Module

현재 MemberInfo가 나타내는 멤버를 선언하는 형식이 정의된 모듈을 가져옵니다. Gets the module in which the type that declares the member represented by the current MemberInfo is defined.

(Inherited from MemberInfo)
Name Name Name Name

현재 멤버의 이름을 가져옵니다. Gets the name of the current member.

(Inherited from MemberInfo)
RaiseMethod RaiseMethod RaiseMethod RaiseMethod

이벤트가 발생할 때 호출되는 메서드(public이 아닌 메서드 포함)를 가져옵니다. Gets the method that is called when the event is raised, including non-public methods.

ReflectedType ReflectedType ReflectedType ReflectedType

MemberInfo의 이 인스턴스를 가져오는 데 사용된 클래스 개체를 가져옵니다. Gets the class object that was used to obtain this instance of MemberInfo.

(Inherited from MemberInfo)
RemoveMethod RemoveMethod RemoveMethod RemoveMethod

비공용 메서드를 포함하여 이벤트 메서드를 제거하기 위한 MethodInfo 개체를 가져옵니다. Gets the MethodInfo object for removing a method of the event, including non-public methods.

메서드

AddEventHandler(Object, Delegate) AddEventHandler(Object, Delegate) AddEventHandler(Object, Delegate) AddEventHandler(Object, Delegate)

이벤트 소스에 이벤트 처리기를 추가합니다. Adds an event handler to an event source.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

@FSHO2@이 인스턴스가 지정한 개체와 같은지를 나타내는 값을 반환합니다. Returns a value that indicates whether this instance is equal to a specified object.

GetAddMethod() GetAddMethod() GetAddMethod() GetAddMethod()

이벤트 소스에 이벤트 처리기 대리자를 추가하는 데 사용되는 메서드를 반환합니다. Returns the method used to add an event handler delegate to the event source.

GetAddMethod(Boolean) GetAddMethod(Boolean) GetAddMethod(Boolean) GetAddMethod(Boolean)

파생된 클래스에서 재정의된 경우 이벤트의 AddEventHandler(Object, Delegate) 메서드에 대한 MethodInfo 개체를 검색하고 public이 아닌 메서드를 반환할지 여부를 지정합니다. When overridden in a derived class, retrieves the MethodInfo object for the AddEventHandler(Object, Delegate) method of the event, specifying whether to return non-public methods.

GetCustomAttributes(Boolean) GetCustomAttributes(Boolean) GetCustomAttributes(Boolean) GetCustomAttributes(Boolean)

파생 클래스에서 재정의되는 경우 이 멤버에 적용된 모든 사용자 지정 특성의 배열을 반환합니다. When overridden in a derived class, returns an array of all custom attributes applied to this member.

(Inherited from MemberInfo)
GetCustomAttributes(Type, Boolean) GetCustomAttributes(Type, Boolean) GetCustomAttributes(Type, Boolean) GetCustomAttributes(Type, Boolean)

파생된 클래스에서 재정의하는 경우 이 멤버에 적용되고 Type으로 식별되는 사용자 지정 특성의 배열을 반환합니다. When overridden in a derived class, returns an array of custom attributes applied to this member and identified by Type.

(Inherited from MemberInfo)
GetCustomAttributesData() GetCustomAttributesData() GetCustomAttributesData() GetCustomAttributesData()

대상 멤버에 적용된 특성에 대한 데이터를 나타내는 CustomAttributeData 개체의 목록을 반환합니다. Returns a list of CustomAttributeData objects representing data about the attributes that have been applied to the target member.

(Inherited from MemberInfo)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

이 인스턴스의 해시 코드를 반환합니다. Returns the hash code for this instance.

GetOtherMethods() GetOtherMethods() GetOtherMethods() GetOtherMethods()

.other 지시문을 사용하여 메타데이터의 이벤트에 연결된 public 메서드를 반환합니다. Returns the public methods that have been associated with an event in metadata using the .other directive.

GetOtherMethods(Boolean) GetOtherMethods(Boolean) GetOtherMethods(Boolean) GetOtherMethods(Boolean)

.other 지시문을 사용하여 메타데이터의 이벤트에 연결된 메서드를 반환합니다. 이때 public이 아닌 메서드를 포함할지 여부를 지정할 수 있습니다. Returns the methods that have been associated with the event in metadata using the .other directive, specifying whether to include non-public methods.

GetRaiseMethod() GetRaiseMethod() GetRaiseMethod() GetRaiseMethod()

이벤트가 발생할 때 호출되는 메서드를 반환합니다. Returns the method that is called when the event is raised.

GetRaiseMethod(Boolean) GetRaiseMethod(Boolean) GetRaiseMethod(Boolean) GetRaiseMethod(Boolean)

파생된 클래스에서 재정의된 경우 이벤트가 발생될 때 호출되는 메서드를 반환하고 public이 아닌 메서드를 반환할지 여부를 지정합니다. When overridden in a derived class, returns the method that is called when the event is raised, specifying whether to return non-public methods.

GetRemoveMethod() GetRemoveMethod() GetRemoveMethod() GetRemoveMethod()

이벤트 소스에서 이벤트 처리기 대리자를 제거하는 데 사용되는 메서드를 반환합니다. Returns the method used to remove an event handler delegate from the event source.

GetRemoveMethod(Boolean) GetRemoveMethod(Boolean) GetRemoveMethod(Boolean) GetRemoveMethod(Boolean)

파생된 클래스에서 재정의된 경우 이벤트의 메서드를 제거하기 위해 MethodInfo 개체를 검색하고 public이 아닌 메서드를 반환할지 여부를 지정합니다. When overridden in a derived class, retrieves the MethodInfo object for removing a method of the event, specifying whether to return non-public methods.

GetType() GetType() GetType() GetType()
HasSameMetadataDefinitionAs(MemberInfo) HasSameMetadataDefinitionAs(MemberInfo) HasSameMetadataDefinitionAs(MemberInfo) HasSameMetadataDefinitionAs(MemberInfo) Inherited from MemberInfo
IsDefined(Type, Boolean) IsDefined(Type, Boolean) IsDefined(Type, Boolean) IsDefined(Type, Boolean)

파생 클래스에서 재정의되는 경우 지정된 형식 또는 파생 형식의 특성이 하나 이상 이 멤버에 적용되는지 여부를 나타냅니다. When overridden in a derived class, indicates whether one or more attributes of the specified type or of its derived types is applied to this member.

(Inherited from MemberInfo)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

현재 Object의 단순 복사본을 만듭니다. Creates a shallow copy of the current Object.

(Inherited from Object)
RemoveEventHandler(Object, Delegate) RemoveEventHandler(Object, Delegate) RemoveEventHandler(Object, Delegate) RemoveEventHandler(Object, Delegate)

이벤트 소스에서 이벤트 처리기를 제거합니다. Removes an event handler from an event source.

ToString() ToString() ToString() ToString()

현재 개체를 나타내는 문자열을 반환합니다. Returns a string that represents the current object.

(Inherited from Object)

연산자

Equality(EventInfo, EventInfo) Equality(EventInfo, EventInfo) Equality(EventInfo, EventInfo) Equality(EventInfo, EventInfo)

EventInfo 개체가 같은지를 나타냅니다. Indicates whether two EventInfo objects are equal.

Inequality(EventInfo, EventInfo) Inequality(EventInfo, EventInfo) Inequality(EventInfo, EventInfo) Inequality(EventInfo, EventInfo)

EventInfo 개체가 같지 않은지를 나타냅니다. Indicates whether two EventInfo objects are not equal.

명시적 인터페이스 구현

ICustomAttributeProvider.GetCustomAttributes(Boolean) ICustomAttributeProvider.GetCustomAttributes(Boolean) ICustomAttributeProvider.GetCustomAttributes(Boolean) ICustomAttributeProvider.GetCustomAttributes(Boolean) Inherited from MemberInfo
ICustomAttributeProvider.GetCustomAttributes(Type, Boolean) ICustomAttributeProvider.GetCustomAttributes(Type, Boolean) ICustomAttributeProvider.GetCustomAttributes(Type, Boolean) ICustomAttributeProvider.GetCustomAttributes(Type, Boolean) Inherited from MemberInfo
ICustomAttributeProvider.IsDefined(Type, Boolean) ICustomAttributeProvider.IsDefined(Type, Boolean) ICustomAttributeProvider.IsDefined(Type, Boolean) ICustomAttributeProvider.IsDefined(Type, Boolean) Inherited from MemberInfo
_EventInfo.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) _EventInfo.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) _EventInfo.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) _EventInfo.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

이름 집합을 해당하는 디스패치 식별자 집합에 매핑합니다. Maps a set of names to a corresponding set of dispatch identifiers.

_EventInfo.GetType() _EventInfo.GetType() _EventInfo.GetType() _EventInfo.GetType()

EventInfo 형식을 나타내는 T:System.Type 개체를 반환합니다. Returns a T:System.Type object representing the EventInfo type.

_EventInfo.GetTypeInfo(UInt32, UInt32, IntPtr) _EventInfo.GetTypeInfo(UInt32, UInt32, IntPtr) _EventInfo.GetTypeInfo(UInt32, UInt32, IntPtr) _EventInfo.GetTypeInfo(UInt32, UInt32, IntPtr)

인터페이스의 형식 정보를 가져오는 데 사용할 수 있는 개체의 형식 정보를 검색합니다. Retrieves the type information for an object, which can then be used to get the type information for an interface.

_EventInfo.GetTypeInfoCount(UInt32) _EventInfo.GetTypeInfoCount(UInt32) _EventInfo.GetTypeInfoCount(UInt32) _EventInfo.GetTypeInfoCount(UInt32)

개체에서 제공하는 형식 정보 인터페이스의 수를 검색합니다(0 또는 1). Retrieves the number of type information interfaces that an object provides (either 0 or 1).

_EventInfo.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) _EventInfo.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) _EventInfo.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) _EventInfo.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

개체에서 노출하는 메서드와 속성에 대한 액세스를 제공합니다. Provides access to properties and methods exposed by an object.

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

이름 집합을 해당하는 디스패치 식별자 집합에 매핑합니다. Maps a set of names to a corresponding set of dispatch identifiers.

(Inherited from MemberInfo)
_MemberInfo.GetType() _MemberInfo.GetType() _MemberInfo.GetType() _MemberInfo.GetType()

Type 클래스를 나타내는 MemberInfo 개체를 가져옵니다. Gets a Type object representing the MemberInfo class.

(Inherited from MemberInfo)
_MemberInfo.GetTypeInfo(UInt32, UInt32, IntPtr) _MemberInfo.GetTypeInfo(UInt32, UInt32, IntPtr) _MemberInfo.GetTypeInfo(UInt32, UInt32, IntPtr) _MemberInfo.GetTypeInfo(UInt32, UInt32, IntPtr)

인터페이스의 형식 정보를 가져오는 데 사용할 수 있는 개체의 형식 정보를 검색합니다. Retrieves the type information for an object, which can then be used to get the type information for an interface.

(Inherited from MemberInfo)
_MemberInfo.GetTypeInfoCount(UInt32) _MemberInfo.GetTypeInfoCount(UInt32) _MemberInfo.GetTypeInfoCount(UInt32) _MemberInfo.GetTypeInfoCount(UInt32)

개체에서 제공하는 형식 정보 인터페이스의 수를 검색합니다(0 또는 1). Retrieves the number of type information interfaces that an object provides (either 0 or 1).

(Inherited from MemberInfo)
_MemberInfo.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) _MemberInfo.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) _MemberInfo.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) _MemberInfo.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

개체에서 노출하는 메서드와 속성에 대한 액세스를 제공합니다. Provides access to properties and methods exposed by an object.

(Inherited from MemberInfo)

보안

InheritanceDemand
상속자에 대 한 완전 신뢰 합니다. for full trust for inheritors. 부분적으로 신뢰할 수 있는 코드에서이 클래스를 상속할 수 없습니다. This class cannot be inherited by partially trusted code.

적용 대상

스레드 보안

이 형식은 스레드로부터 안전합니다. This type is thread safe.