Type.GetEvents メソッド
現在の Type で宣言または継承されているイベントを取得します。
オーバーロードの一覧
現在の Type で宣言または継承されているすべてのパブリック イベントを返します。
.NET Compact Framework でもサポート。
[Visual Basic] Overloads Public Overridable Function GetEvents() As EventInfo()
派生クラスによってオーバーライドされた場合、指定したバインディング制約を使用して、現在の Type で宣言または継承されているイベントを検索します。
.NET Compact Framework でもサポート。
[Visual Basic] Overloads Public MustOverride Function GetEvents(BindingFlags) As EventInfo()
[C++] public: virtual EventInfo* GetEvents(BindingFlags) [] = 0;
[JScript] public abstract function GetEvents(BindingFlags) : EventInfo[];
使用例
[Visual Basic, C#, C++] 指定したバインディング フラグに一致する EventInfo オブジェクトの配列を取得し、 Button クラスのイベントをすべて取得して、イベント名を表示する例を次に示します。Visual Basic の例をコンパイルするには、次のコマンド ラインを使用します。
[Visual Basic, C#, C++] vbc type_getevents2.vb /r:System.Windows.Forms.dll /r:System.dll
[Visual Basic, C#, C++] メモ ここでは、GetEvents のオーバーロード形式のうちの 1 つだけについて、使用例を示します。その他の例については、各オーバーロード形式のトピックを参照してください。
Imports System
Imports System.Reflection
Imports System.Security
Imports System.Windows.Forms
Imports Microsoft.VisualBasic
Class EventsSample
Public Shared Sub Main()
Try
' Create a bitmask based on BindingFlags.
Dim myBindingFlags As BindingFlags = BindingFlags.Instance Or BindingFlags.Public
Dim myTypeEvent As Type = GetType(System.Windows.Forms.Button)
Dim myEventsBindingFlags As EventInfo() = myTypeEvent.GetEvents(myBindingFlags)
Console.WriteLine(ControlChars.Cr + "The events on the Button class with the specified BindingFlags are:")
Dim index As Integer
For index = 0 To myEventsBindingFlags.Length - 1
Console.WriteLine(myEventsBindingFlags(index).ToString())
Next index
Catch e As SecurityException
Console.WriteLine("SecurityException:" + e.Message)
Catch e As ArgumentNullException
Console.WriteLine("ArgumentNullException: " + e.Message)
Catch e As Exception
Console.WriteLine("Exception: " + e.Message)
End Try
End Sub 'Main
End Class 'EventsSample
[C#]
using System;
using System.Reflection;
using System.Security;
class EventsSample
{
public static void Main()
{
try
{
// Create a bitmask based on BindingFlags.
BindingFlags myBindingFlags = BindingFlags.Instance | BindingFlags.Public;
Type myTypeEvent = typeof(System.Windows.Forms.Button);
EventInfo[] myEventsBindingFlags = myTypeEvent.GetEvents(myBindingFlags);
Console.WriteLine("\nThe events on the Button class with the specified BindingFlags are:");
for (int index = 0; index < myEventsBindingFlags.Length; index++)
{
Console.WriteLine(myEventsBindingFlags[index].ToString());
}
}
catch(SecurityException e)
{
Console.WriteLine("SecurityException:" + e.Message);
}
catch(ArgumentNullException e)
{
Console.WriteLine("ArgumentNullException: " + e.Message);
}
catch(Exception e)
{
Console.WriteLine("Exception: " + e.Message);
}
}
}
[C++]
#using <mscorlib.dll>
#using <System.dll>
#using <System.Windows.Forms.dll>
using namespace System;
using namespace System::Reflection;
using namespace System::Security;
int main()
{
try {
// Create a bitmask based on BindingFlags.
BindingFlags myBindingFlags = static_cast<BindingFlags>(BindingFlags::Instance | BindingFlags::Public);
Type* myTypeEvent = __typeof(System::Windows::Forms::Button);
EventInfo* myEventsBindingFlags[] = myTypeEvent->GetEvents(myBindingFlags);
Console::WriteLine(S"\nThe events on the Button class with the specified BindingFlags are:");
for (int index = 0; index < myEventsBindingFlags->Length; index++) {
Console::WriteLine(myEventsBindingFlags[index]);
}
} catch (SecurityException* e) {
Console::WriteLine(S"SecurityException: {0}", e->Message);
} catch (ArgumentNullException* e) {
Console::WriteLine(S"ArgumentNullException: {0}", e->Message);
} catch (Exception* e) {
Console::WriteLine(S"Exception: {0}", e->Message);
}
}
[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン をクリックします。