EventInfo Sınıf

Tanım

Bir olayın özniteliklerini bulur ve olay meta verilerine erişim sağlar.

public ref class EventInfo abstract : System::Reflection::MemberInfo
public ref class EventInfo abstract : System::Reflection::MemberInfo, System::Runtime::InteropServices::_EventInfo
public abstract class EventInfo : System.Reflection.MemberInfo
[System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)]
public abstract class EventInfo : System.Reflection.MemberInfo, System.Runtime.InteropServices._EventInfo
[System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)]
[System.Runtime.InteropServices.ComVisible(true)]
[System.Serializable]
public abstract class EventInfo : System.Reflection.MemberInfo, System.Runtime.InteropServices._EventInfo
type EventInfo = class
    inherit MemberInfo
[<System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)>]
type EventInfo = class
    inherit MemberInfo
    interface _EventInfo
[<System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)>]
[<System.Runtime.InteropServices.ComVisible(true)>]
[<System.Serializable>]
type EventInfo = class
    inherit MemberInfo
    interface _EventInfo
Public MustInherit Class EventInfo
Inherits MemberInfo
Public MustInherit Class EventInfo
Inherits MemberInfo
Implements _EventInfo
Devralma
EventInfo
Türetilmiş
Öznitelikler
Uygulamalar

Örnekler

Aşağıdaki kod, sınıfının olayı Button için Click bir EventInfo nesnesi alır.

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.Reflection
Imports System.Security

' 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
End Class

Açıklamalar

yönteminin örnek kodunda EventInfo gösterildiği gibi olayları incelemek ve olay işleyicilerini bağlamak için sınıfını AddEventHandler kullanın.

Note

EventInfo , olayları tetiklerken kullanılmak üzere tasarlanmamıştır. Bir nesne, iç durumu tarafından dikte edilen olayları oluşturur.

Olaylar temsilcilerle birlikte kullanılır. Olay dinleyicisi, olay bir olay kaynağı tarafından her tetiklendiğinde çağrılan bir olay işleyicisi temsilcisinin örneğini oluşturur. Olay kaynağına bağlanmak için, olay dinleyicisi bu temsilciyi kaynaktaki çağırma listesine ekler. Olay tetiklendiğinde, olay işleyicisi temsilcisinin invoke yöntemi çağrılır. Hem çok noktaya yayın hem de tek yayınlı olay bildirimleri desteklenir. ve Remove yöntemlerinin Add yanı sıra bir olayla ilişkilendirilmiş olay işleyicisi temsilci sınıfı meta verilerde işaretlenmelidir.

Temsilciler nesne odaklı işlev işaretçileridir. C veya C++'da işlev işaretçisi bir yönteme başvurudur. C veya C++ işlev işaretçisinin aksine, temsilci iki başvuru içerir: bir yönteme başvuru ve yöntemi destekleyen bir nesneye başvuru. Temsilciler, yöntemi bildiren veya devralan sınıf türünü bilmeden bir yöntemi çağırabilir. Temsilcilerin yalnızca yöntemin dönüş türünü ve parametre listesini bilmesi gerekir.

Olay modeli, tek atamalı ve çok noktaya yayın temsilcileri için eşit derecede iyi çalışır. Temsilcinin çağırma yöntemi çağrıldığında, yalnızca tek bir nesnenin üzerinde adlı bir yöntemi olur. Bir çok noktaya yayın değiştirici, temsilcinin çağırma yöntemi çağrıldığında birden çok yöntemin çağrılmasını sağlayan bir temsilci bildirimine uygulanabilir.

ICustomAttributeProvider.GetCustomAttributes EventInfo parametresinin inherit ne zaman çağrılması GetCustomAttributestrue tür hiyerarşisinde izlenmez. Özel öznitelikleri devralmak için kullanın System.Attribute .

Uygulayanlara Notlar

öğesinden EventInfodevraldığınızda, şu üyeleri geçersiz kılmalısınız: GetAddMethod(Boolean), GetRemoveMethod(Boolean)ve GetRaiseMethod(Boolean).

Oluşturucular

Name Description
EventInfo()

EventInfo sınıfının yeni bir örneğini başlatır.

Özellikler

Name Description
AddMethod

MethodInfo Ortak olmayan yöntemler de dahil olmak üzere olayın yönteminin nesnesini AddEventHandler(Object, Delegate) alır.

Attributes

Bu olayın özniteliklerini alır.

CustomAttributes

Bu üyenin özel özniteliklerini içeren bir koleksiyon alır.

(Devralındığı yer: MemberInfo)
DeclaringType

Bu üyeyi bildiren sınıfı alır.

(Devralındığı yer: MemberInfo)
EventHandlerType

Type Bu olayla ilişkili temel olay işleyici temsilcisinin nesnesini alır.

IsMulticast

Olayın çok noktaya yayın olup olmadığını belirten bir değer alır.

IsSpecialName

özel bir anlamı olan bir ada sahip olup olmadığını EventInfo belirten bir değer alır.

MemberType

MemberTypes Bu üyenin bir olay olduğunu belirten bir değer alır.

MetadataToken

Meta veri öğesini tanımlayan bir değer alır.

(Devralındığı yer: MemberInfo)
Module

Geçerli MemberInfo tarafından temsil edilen üyeyi bildiren türün tanımlandığı modülü alır.

(Devralındığı yer: MemberInfo)
Name

Geçerli üyenin adını alır.

(Devralındığı yer: MemberInfo)
RaiseMethod

Genel olmayan yöntemler de dahil olmak üzere olay tetiklendiğinde çağrılan yöntemi alır.

ReflectedType

bu örneğini MemberInfoalmak için kullanılan sınıf nesnesini alır.

(Devralındığı yer: MemberInfo)
RemoveMethod

MethodInfo Genel olmayan yöntemler de dahil olmak üzere olayın bir yöntemini kaldırmak için nesnesini alır.

Yöntemler

Name Description
AddEventHandler(Object, Delegate)

Olay kaynağına olay işleyicisi ekler.

Equals(Object)

Bu örneğin belirtilen bir nesneye eşit olup olmadığını gösteren bir değer döndürür.

GetAddMethod()

Olay kaynağına bir olay işleyici temsilcisi eklemek için kullanılan yöntemi döndürür.

GetAddMethod(Boolean)

Türetilmiş bir sınıfta geçersiz kılındığında, olayın yönteminin nesnesini AddEventHandler(Object, Delegate) alır MethodInfo ve genel olmayan yöntemlerin döndürülip döndürülmeyeceğini belirtir.

GetCustomAttributes(Boolean)

Türetilmiş bir sınıfta geçersiz kılındığında, bu üyeye uygulanan tüm özel özniteliklerden oluşan bir dizi döndürür.

(Devralındığı yer: MemberInfo)
GetCustomAttributes(Type, Boolean)

Türetilmiş bir sınıfta geçersiz kılındığında, bu üyeye uygulanan ve tarafından Typetanımlanan bir özel öznitelik dizisi döndürür.

(Devralındığı yer: MemberInfo)
GetCustomAttributesData()

Hedef üyeye CustomAttributeData uygulanmış öznitelikler hakkındaki verileri temsil eden nesnelerin listesini döndürür.

(Devralındığı yer: MemberInfo)
GetHashCode()

Bu örneğin karma kodunu döndürür.

GetOtherMethods()

yönergesini kullanarak .other meta verilerdeki bir olayla ilişkilendirilmiş genel yöntemleri döndürür.

GetOtherMethods(Boolean)

yönergesini kullanarak .other meta verilerdeki olayla ilişkilendirilmiş yöntemleri döndürür ve genel olmayan yöntemlerin dahil edilip edilmeyeceğini belirtir.

GetRaiseMethod()

Olay tetiklendiğinde çağrılan yöntemi döndürür.

GetRaiseMethod(Boolean)

Türetilmiş bir sınıfta geçersiz kılındığında, olay tetiklendiğinde çağrılan yöntemi döndürür ve genel olmayan yöntemlerin döndürülip döndürülmeyeceğini belirtir.

GetRemoveMethod()

Olay kaynağından bir olay işleyici temsilcisini kaldırmak için kullanılan yöntemi döndürür.

GetRemoveMethod(Boolean)

Türetilmiş bir sınıfta geçersiz kılındığında, olayın bir yöntemini kaldırmak için nesnesini alır MethodInfo ve genel olmayan yöntemlerin döndürülip döndürülmeyeceğini belirtir.

GetType()

Sınıf olayının özniteliklerini bulur ve olay meta verilerine erişim sağlar.

HasSameMetadataDefinitionAs(MemberInfo)

Bir olayın özniteliklerini bulur ve olay meta verilerine erişim sağlar.

(Devralındığı yer: MemberInfo)
IsDefined(Type, Boolean)

Türetilmiş bir sınıfta geçersiz kılındığında, belirtilen türde veya türetilmiş türlerdeki bir veya daha fazla özniteliğin bu üyeye uygulanıp uygulanmadığını gösterir.

(Devralındığı yer: MemberInfo)
MemberwiseClone()

Geçerli Objectbasit bir kopyasını oluşturur.

(Devralındığı yer: Object)
RemoveEventHandler(Object, Delegate)

Olay kaynağından olay işleyicisini kaldırır.

ToString()

Geçerli nesneyi temsil eden bir dize döndürür.

(Devralındığı yer: Object)

İşleçler

Name Description
Equality(EventInfo, EventInfo)

İki EventInfo nesnenin eşit olup olmadığını gösterir.

Inequality(EventInfo, EventInfo)

İki EventInfo nesnenin eşit olup olmadığını gösterir.

Belirtik Arabirim Kullanımları

Name Description
_EventInfo.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Bir ad kümesini karşılık gelen bir dağıtma tanımlayıcısı kümesine eşler.

_EventInfo.GetType()

Türü temsil eden EventInfo bir T:System.Type nesne döndürür.

_EventInfo.GetTypeInfo(UInt32, UInt32, IntPtr)

Bir nesne için tür bilgilerini alır ve bu da bir arabirimin tür bilgisini almak için kullanılabilir.

_EventInfo.GetTypeInfoCount(UInt32)

Bir nesnenin sağladığı tür bilgisi arabirimlerinin sayısını alır (0 ya da 1).

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

Bir nesne tarafından kullanıma sunulan özelliklere ve yöntemlere erişim sağlar.

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

Bir ad kümesini karşılık gelen bir dağıtma tanımlayıcısı kümesine eşler.

(Devralındığı yer: MemberInfo)
_MemberInfo.GetType()

Sınıfını temsil eden Type bir MemberInfo nesne alır.

(Devralındığı yer: MemberInfo)
_MemberInfo.GetTypeInfo(UInt32, UInt32, IntPtr)

Bir nesne için tür bilgilerini alır ve bu da bir arabirimin tür bilgisini almak için kullanılabilir.

(Devralındığı yer: MemberInfo)
_MemberInfo.GetTypeInfoCount(UInt32)

Bir nesnenin sağladığı tür bilgisi arabirimlerinin sayısını alır (0 ya da 1).

(Devralındığı yer: MemberInfo)
_MemberInfo.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Bir nesne tarafından kullanıma sunulan özelliklere ve yöntemlere erişim sağlar.

(Devralındığı yer: MemberInfo)
ICustomAttributeProvider.GetCustomAttributes(Boolean)

Adlandırılmış öznitelikler hariç olmak üzere bu üyede tanımlanan tüm özel özniteliklerden oluşan bir dizi veya özel öznitelik yoksa boş bir dizi döndürür.

(Devralındığı yer: MemberInfo)
ICustomAttributeProvider.GetCustomAttributes(Type, Boolean)

Bu üyede tanımlanan, türe göre tanımlanan bir özel öznitelik dizisi veya bu türdeki özel öznitelikler yoksa boş bir dizi döndürür.

(Devralındığı yer: MemberInfo)
ICustomAttributeProvider.IsDefined(Type, Boolean)

Bir veya daha fazla örneğinin bu üyede tanımlanıp tanımlanmadığını attributeType gösterir.

(Devralındığı yer: MemberInfo)

Uzantı Metotları

Name Description
GetAddMethod(EventInfo, Boolean)

Bir olayın özniteliklerini bulur ve olay meta verilerine erişim sağlar.

GetAddMethod(EventInfo)

Bir olayın özniteliklerini bulur ve olay meta verilerine erişim sağlar.

GetCustomAttribute(MemberInfo, Type, Boolean)

Belirtilen bir üyeye uygulanan belirtilen türdeki özel özniteliği alır ve isteğe bağlı olarak bu üyenin atalarını inceler.

GetCustomAttribute(MemberInfo, Type)

Belirtilen üyeye uygulanan belirtilen türde bir özel özniteliği alır.

GetCustomAttribute<T>(MemberInfo, Boolean)

Belirtilen bir üyeye uygulanan belirtilen türdeki özel özniteliği alır ve isteğe bağlı olarak bu üyenin atalarını inceler.

GetCustomAttribute<T>(MemberInfo)

Belirtilen üyeye uygulanan belirtilen türde bir özel özniteliği alır.

GetCustomAttributes(MemberInfo, Boolean)

Belirli bir üyeye uygulanan özel öznitelikler koleksiyonunu alır ve isteğe bağlı olarak bu üyenin atalarını inceler.

GetCustomAttributes(MemberInfo, Type, Boolean)

Belirtilen bir üyeye uygulanan belirtilen türdeki özel özniteliklerden oluşan bir koleksiyonu alır ve isteğe bağlı olarak bu üyenin atalarını inceler.

GetCustomAttributes(MemberInfo, Type)

Belirtilen üyeye uygulanan belirtilen türde özel özniteliklerden oluşan bir koleksiyonu alır.

GetCustomAttributes(MemberInfo)

Belirtilen üyeye uygulanan özel öznitelik koleksiyonunu alır.

GetCustomAttributes<T>(MemberInfo, Boolean)

Belirtilen bir üyeye uygulanan belirtilen türdeki özel özniteliklerden oluşan bir koleksiyonu alır ve isteğe bağlı olarak bu üyenin atalarını inceler.

GetCustomAttributes<T>(MemberInfo)

Belirtilen üyeye uygulanan belirtilen türde özel özniteliklerden oluşan bir koleksiyonu alır.

GetRaiseMethod(EventInfo, Boolean)

Bir olayın özniteliklerini bulur ve olay meta verilerine erişim sağlar.

GetRaiseMethod(EventInfo)

Bir olayın özniteliklerini bulur ve olay meta verilerine erişim sağlar.

GetRemoveMethod(EventInfo, Boolean)

Bir olayın özniteliklerini bulur ve olay meta verilerine erişim sağlar.

GetRemoveMethod(EventInfo)

Bir olayın özniteliklerini bulur ve olay meta verilerine erişim sağlar.

IsDefined(MemberInfo, Type, Boolean)

Belirtilen türde özel özniteliklerin belirtilen bir üyeye uygulanıp uygulanmadığını ve isteğe bağlı olarak üst öğeye uygulanıp uygulanmadığını gösterir.

IsDefined(MemberInfo, Type)

Belirtilen türde özel özniteliklerin belirtilen üyeye uygulanıp uygulanmadığını gösterir.

Şunlara uygulanır

İş Parçacığı Güvenliği

Bu tür iş parçacığı güvenlidir.