EventArrivedEventHandler Delegasikan
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.
Mewakili metode yang akan menangani EventArrived peristiwa.
public delegate void EventArrivedEventHandler(System::Object ^ sender, EventArrivedEventArgs ^ e);
public delegate void EventArrivedEventHandler(object sender, EventArrivedEventArgs e);
type EventArrivedEventHandler = delegate of obj * EventArrivedEventArgs -> unit
Public Delegate Sub EventArrivedEventHandler(sender As Object, e As EventArrivedEventArgs)
Parameter
- sender
- Object
Instans objek untuk memanggil metode ini.
EventArrivedEventArgs yang menentukan alasan peristiwa dipanggil.
Contoh
Contoh asinkron berikut menyiapkan timer WMI untuk menaikkan peristiwa setiap detik, dan menghapusnya saat tidak lagi diperlukan. mendefinisikan ManagementEventWatcher beberapa peristiwa .NET Framework yang dimunculkan ketika peristiwa WMI dikirimkan. Delegasi dilampirkan ke peristiwa ini untuk menangani data masuk.
using System;
using System.Management;
// This example shows asynchronous consumption of events.
// In this example you are listening for timer events.
// The first part of the example sets up the timer.
public class EventWatcherAsync
{
public EventWatcherAsync()
{
// Set up a timer to raise events every 1 second
//=============================================
ManagementClass timerClass =
new ManagementClass("__IntervalTimerInstruction");
ManagementObject timer = timerClass.CreateInstance();
timer["TimerId"] = "Timer1";
timer["IntervalBetweenEvents"] = 1000;
timer.Put();
// Set up the event consumer
//==========================
// Create event query to receive timer events
WqlEventQuery query =
new WqlEventQuery("__TimerEvent",
"TimerId=\"Timer1\"");
// Initialize an event watcher and
// subscribe to timer events
ManagementEventWatcher watcher =
new ManagementEventWatcher(query);
// Set up a listener for events
watcher.EventArrived +=
new EventArrivedEventHandler(
this.HandleEvent);
// Start listening
watcher.Start();
// Do something in the meantime
System.Threading.Thread.Sleep(10000);
// Stop listening
watcher.Stop();
}
private void HandleEvent(object sender,
EventArrivedEventArgs e)
{
Console.WriteLine("Event arrived !");
}
public static void Main(string[] args)
{
// start the event watcher
EventWatcherAsync eventWatcher = new
EventWatcherAsync();
}
}
Imports System.Management
' This example shows asynchronous consumption of events.
' In this example you are listening for timer events.
' The first part of the example sets up the timer.
Public Class EventWatcherAsync
Public Sub New()
' Set up a timer to raise events every 1 second
'=============================================
Dim timerClass As New ManagementClass( _
"__IntervalTimerInstruction")
Dim timer As ManagementObject = _
timerClass.CreateInstance()
timer("TimerId") = "Timer1"
timer("IntervalBetweenEvents") = 1000
timer.Put()
' Set up the event consumer
'==========================
' Create event query to receive timer events
Dim query As New WqlEventQuery("__TimerEvent", _
"TimerId=""Timer1""")
' Initialize an event watcher and subscribe to
' events that match this query
Dim watcher As New ManagementEventWatcher(query)
' Set up a listener for events
AddHandler watcher.EventArrived, _
AddressOf Me.HandleEvent
' Start listening
watcher.Start()
' Do something in the meantime
System.Threading.Thread.Sleep(10000)
' Stop listening
watcher.Stop()
End Sub
Private Sub HandleEvent(ByVal sender As Object, _
ByVal e As EventArrivedEventArgs)
Console.WriteLine("Event arrived !")
End Sub
Public Overloads Shared Function _
Main(ByVal args() As String) As Integer
'start the event watcher
Dim eventWatcher As New EventWatcherAsync
Return 0
End Function
End Class
Metode Ekstensi
GetMethodInfo(Delegate) |
Mendapatkan objek yang mewakili metode yang diwakili oleh delegasi yang ditentukan. |
Berlaku untuk
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk