EventInfo Kelas
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Menemukan atribut peristiwa dan menyediakan akses ke metadata peristiwa.
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
- Warisan
- Turunan
- Atribut
- Penerapan
Contoh
Kode berikut mendapatkan EventInfo objek untuk Click peristiwa Button kelas .
#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.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
Keterangan
EventInfo Gunakan kelas untuk memeriksa peristiwa dan untuk menghubungkan penanganan aktivitas, seperti yang ditunjukkan dalam kode contoh untuk metode .AddEventHandler
Catatan
EventInfo tidak dimaksudkan untuk digunakan untuk menaikkan peristiwa. Objek menaikkan peristiwa sebagaimana ditentukan oleh keadaan internalnya.
Peristiwa digunakan dengan delegasi. Pendengar peristiwa membuat instans delegasi penanganan aktivitas yang dipanggil setiap kali peristiwa dinaikkan oleh sumber peristiwa. Untuk menyambungkan ke sumber kejadian, pendengar peristiwa menambahkan delegasi ini ke daftar pemanggilan pada sumbernya. Ketika peristiwa dinaikkan, metode pemanggilan delegasi penanganan aktivitas dipanggil. Pemberitahuan peristiwa multicast dan single-cast didukung. Metode Add
dan Remove
, serta kelas delegasi penanganan aktivitas yang terkait dengan peristiwa, harus ditandai dalam metadata.
Delegasi adalah penunjuk fungsi berorientasi objek. Di C atau C++, penunjuk fungsi adalah referensi ke metode . Berbeda dengan penunjuk fungsi C atau C++, delegasi berisi dua referensi: referensi ke metode dan referensi ke objek yang mendukung metode . Delegasi dapat memanggil metode tanpa mengetahui jenis kelas yang menyatakan atau mewarisi metode . Delegasi hanya perlu mengetahui jenis pengembalian dan daftar parameter metode.
Model peristiwa bekerja sama baiknya untuk delegasi single-cast dan multicast. Ketika metode pemanggilan delegasi dipanggil, hanya satu objek yang akan memiliki metode yang dipanggil di atasnya. Pengubah multicast dapat diterapkan ke deklarasi delegasi, yang memungkinkan beberapa metode dipanggil ketika metode pemanggilan delegasi dipanggil.
Memanggil ICustomAttributeProvider.GetCustomAttributes pada EventInfo
saat inherit
parameter GetCustomAttributes
tidak true
berjalan dengan hierarki jenis. Gunakan System.Attribute untuk mewarisi atribut kustom.
Catatan Bagi Implementer
Ketika Anda mewarisi dari EventInfo
, Anda harus mengambil alih anggota berikut: GetAddMethod(Boolean), GetRemoveMethod(Boolean), dan GetRaiseMethod(Boolean).
Konstruktor
EventInfo() |
Menginisialisasi instans baru kelas |
Properti
AddMethod |
MethodInfo Mendapatkan objek untuk AddEventHandler(Object, Delegate) metode peristiwa, termasuk metode non-publik. |
Attributes |
Mendapatkan atribut untuk kejadian ini. |
CustomAttributes |
Mendapatkan koleksi yang berisi atribut kustom anggota ini. (Diperoleh dari MemberInfo) |
DeclaringType |
Mendapatkan kelas yang menyatakan anggota ini. (Diperoleh dari MemberInfo) |
EventHandlerType |
Mendapatkan objek dari delegasi penanganan aktivitas yang mendasar |
IsCollectible |
Mendapatkan nilai yang menunjukkan apakah objek ini MemberInfo adalah bagian dari perakitan yang dipegang dalam koleksi AssemblyLoadContext. (Diperoleh dari MemberInfo) |
IsMulticast |
Mendapatkan nilai yang menunjukkan apakah peristiwa tersebut multicast. |
IsSpecialName |
Mendapatkan nilai yang menunjukkan apakah |
MemberType |
Mendapatkan nilai yang MemberTypes menunjukkan bahwa anggota ini adalah peristiwa. |
MemberType |
Saat ditimpa di kelas turunan, mendapatkan nilai yang MemberTypes menunjukkan jenis anggota - metode, konstruktor, peristiwa, dan sebagainya. (Diperoleh dari MemberInfo) |
MetadataToken |
Mendapatkan nilai yang mengidentifikasi elemen metadata. (Diperoleh dari MemberInfo) |
Module |
Mendapatkan modul di mana jenis yang menyatakan anggota yang diwakili oleh saat ini MemberInfo ditentukan. (Diperoleh dari MemberInfo) |
Name |
Mendapatkan nama anggota saat ini. (Diperoleh dari MemberInfo) |
RaiseMethod |
Mendapatkan metode yang dipanggil ketika peristiwa dinaikkan, termasuk metode non-publik. |
ReflectedType |
Mendapatkan objek kelas yang digunakan untuk mendapatkan instans ini dari |
RemoveMethod |
|
Metode
AddEventHandler(Object, Delegate) |
Menambahkan penanganan aktivitas ke sumber kejadian. |
Equals(Object) |
Mengembalikan nilai yang menunjukkan apakah instans ini sama dengan objek tertentu. |
Equals(Object) |
Mengembalikan nilai yang menunjukkan apakah instans ini sama dengan objek tertentu. (Diperoleh dari MemberInfo) |
GetAddMethod() |
Mengembalikan metode yang digunakan untuk menambahkan delegasi penanganan aktivitas ke sumber kejadian. |
GetAddMethod(Boolean) |
Ketika ditimpa di kelas turunan, mengambil |
GetCustomAttributes(Boolean) |
Saat ditimpa di kelas turunan, mengembalikan array semua atribut kustom yang diterapkan ke anggota ini. (Diperoleh dari MemberInfo) |
GetCustomAttributes(Type, Boolean) |
Saat ditimpa di kelas turunan, mengembalikan array atribut kustom yang diterapkan ke anggota ini dan diidentifikasi oleh Type. (Diperoleh dari MemberInfo) |
GetCustomAttributesData() |
Mengembalikan daftar CustomAttributeData objek yang mewakili data tentang atribut yang telah diterapkan ke anggota target. (Diperoleh dari MemberInfo) |
GetHashCode() |
Mengembalikan kode hash untuk instans ini. |
GetHashCode() |
Mengembalikan kode hash untuk instans ini. (Diperoleh dari MemberInfo) |
GetOtherMethods() |
Mengembalikan metode publik yang telah dikaitkan dengan peristiwa dalam metadata menggunakan direktif |
GetOtherMethods(Boolean) |
Mengembalikan metode yang telah dikaitkan dengan peristiwa dalam metadata menggunakan |
GetRaiseMethod() |
Mengembalikan metode yang dipanggil saat peristiwa dinaikkan. |
GetRaiseMethod(Boolean) |
Ketika ditimpa di kelas turunan, mengembalikan metode yang dipanggil saat peristiwa dinaikkan, menentukan apakah akan mengembalikan metode non-publik. |
GetRemoveMethod() |
Mengembalikan metode yang digunakan untuk menghapus delegasi penanganan aktivitas dari sumber kejadian. |
GetRemoveMethod(Boolean) |
Saat ditimpa di kelas turunan, mengambil |
GetType() |
Menemukan atribut peristiwa kelas dan menyediakan akses ke metadata peristiwa. |
GetType() |
Menemukan atribut anggota dan menyediakan akses ke metadata anggota. (Diperoleh dari MemberInfo) |
HasSameMetadataDefinitionAs(MemberInfo) |
Menemukan atribut peristiwa dan menyediakan akses ke metadata peristiwa. (Diperoleh dari MemberInfo) |
IsDefined(Type, Boolean) |
Ketika ditimpa di kelas turunan, menunjukkan apakah satu atau beberapa atribut dari jenis yang ditentukan atau jenis turunannya diterapkan kepada anggota ini. (Diperoleh dari MemberInfo) |
MemberwiseClone() |
Membuat salinan dangkal dari saat ini Object. (Diperoleh dari Object) |
RemoveEventHandler(Object, Delegate) |
Menghapus penanganan aktivitas dari sumber kejadian. |
ToString() |
Mengembalikan string yang mewakili objek saat ini. (Diperoleh dari Object) |
Operator
Equality(EventInfo, EventInfo) |
Menunjukkan apakah dua EventInfo objek sama. |
Inequality(EventInfo, EventInfo) |
Menunjukkan apakah dua EventInfo objek tidak sama. |
Implementasi Antarmuka Eksplisit
_EventInfo.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Memetakan sekumpulan nama ke sekumpulan pengidentifikasi pengiriman yang sesuai. |
_EventInfo.GetType() |
Mengembalikan objek yang |
_EventInfo.GetTypeInfo(UInt32, UInt32, IntPtr) |
Mengambil informasi jenis untuk objek, yang kemudian dapat digunakan untuk mendapatkan informasi jenis untuk antarmuka. |
_EventInfo.GetTypeInfoCount(UInt32) |
Mengambil jumlah antarmuka informasi jenis yang disediakan objek (baik 0 atau 1). |
_EventInfo.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Menyediakan akses ke properti dan metode yang diekspos oleh objek. |
_MemberInfo.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Memetakan sekumpulan nama ke sekumpulan pengidentifikasi pengiriman yang sesuai. (Diperoleh dari MemberInfo) |
_MemberInfo.GetType() |
Mendapatkan objek yang Type mewakili MemberInfo kelas . (Diperoleh dari MemberInfo) |
_MemberInfo.GetTypeInfo(UInt32, UInt32, IntPtr) |
Mengambil informasi jenis untuk objek, yang kemudian dapat digunakan untuk mendapatkan informasi jenis untuk antarmuka. (Diperoleh dari MemberInfo) |
_MemberInfo.GetTypeInfoCount(UInt32) |
Mengambil jumlah antarmuka informasi jenis yang disediakan objek (baik 0 atau 1). (Diperoleh dari MemberInfo) |
_MemberInfo.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Menyediakan akses ke properti dan metode yang diekspos oleh objek. (Diperoleh dari MemberInfo) |
ICustomAttributeProvider.GetCustomAttributes(Boolean) |
Mengembalikan array dari semua atribut kustom yang ditentukan pada anggota ini, tidak termasuk atribut bernama, atau array kosong jika tidak ada atribut kustom. (Diperoleh dari MemberInfo) |
ICustomAttributeProvider.GetCustomAttributes(Type, Boolean) |
Mengembalikan array atribut kustom yang ditentukan pada anggota ini, diidentifikasi berdasarkan jenis, atau array kosong jika tidak ada atribut kustom dari jenis tersebut. (Diperoleh dari MemberInfo) |
ICustomAttributeProvider.IsDefined(Type, Boolean) |
Menunjukkan apakah satu atau beberapa |
Metode Ekstensi
GetCustomAttribute(MemberInfo, Type) |
Mengambil atribut kustom dari jenis tertentu yang diterapkan ke anggota tertentu. |
GetCustomAttribute(MemberInfo, Type, Boolean) |
Mengambil atribut kustom dari jenis tertentu yang diterapkan ke anggota tertentu, dan secara opsional memeriksa leluhur anggota tersebut. |
GetCustomAttribute<T>(MemberInfo) |
Mengambil atribut kustom dari jenis tertentu yang diterapkan ke anggota tertentu. |
GetCustomAttribute<T>(MemberInfo, Boolean) |
Mengambil atribut kustom dari jenis tertentu yang diterapkan ke anggota tertentu, dan secara opsional memeriksa leluhur anggota tersebut. |
GetCustomAttributes(MemberInfo) |
Mengambil kumpulan atribut kustom yang diterapkan ke anggota tertentu. |
GetCustomAttributes(MemberInfo, Boolean) |
Mengambil kumpulan atribut kustom yang diterapkan ke anggota tertentu, dan secara opsional memeriksa leluhur anggota tersebut. |
GetCustomAttributes(MemberInfo, Type) |
Mengambil kumpulan atribut kustom dari jenis tertentu yang diterapkan ke anggota tertentu. |
GetCustomAttributes(MemberInfo, Type, Boolean) |
Mengambil kumpulan atribut kustom dari jenis tertentu yang diterapkan ke anggota tertentu, dan secara opsional memeriksa leluhur anggota tersebut. |
GetCustomAttributes<T>(MemberInfo) |
Mengambil kumpulan atribut kustom dari jenis tertentu yang diterapkan ke anggota tertentu. |
GetCustomAttributes<T>(MemberInfo, Boolean) |
Mengambil kumpulan atribut kustom dari jenis tertentu yang diterapkan ke anggota tertentu, dan secara opsional memeriksa leluhur anggota tersebut. |
IsDefined(MemberInfo, Type) |
Menunjukkan apakah atribut kustom dari jenis tertentu diterapkan ke anggota tertentu. |
IsDefined(MemberInfo, Type, Boolean) |
Menunjukkan apakah atribut kustom dari jenis tertentu diterapkan ke anggota tertentu, dan, secara opsional, diterapkan ke leluhurnya. |
GetAddMethod(EventInfo) |
Menemukan atribut peristiwa dan menyediakan akses ke metadata peristiwa. |
GetAddMethod(EventInfo, Boolean) |
Menemukan atribut peristiwa dan menyediakan akses ke metadata peristiwa. |
GetRaiseMethod(EventInfo) |
Menemukan atribut peristiwa dan menyediakan akses ke metadata peristiwa. |
GetRaiseMethod(EventInfo, Boolean) |
Menemukan atribut peristiwa dan menyediakan akses ke metadata peristiwa. |
GetRemoveMethod(EventInfo) |
Menemukan atribut peristiwa dan menyediakan akses ke metadata peristiwa. |
GetRemoveMethod(EventInfo, Boolean) |
Menemukan atribut peristiwa dan menyediakan akses ke metadata peristiwa. |
GetMetadataToken(MemberInfo) |
Mendapatkan token metadata untuk anggota tertentu, jika tersedia. |
HasMetadataToken(MemberInfo) |
Mengembalikan nilai yang menunjukkan apakah token metadata tersedia untuk anggota yang ditentukan. |
Berlaku untuk
Keamanan Thread
Jenis ini aman untuk utas.