EventListener 類別

定義

提供啟用和停用事件來源事件的方法。

public ref class EventListener abstract : IDisposable
public ref class EventListener : IDisposable
public abstract class EventListener : IDisposable
public class EventListener : IDisposable
type EventListener = class
    interface IDisposable
Public MustInherit Class EventListener
Implements IDisposable
Public Class EventListener
Implements IDisposable
繼承
EventListener
實作

備註

事件接聽程式代表目前應用程式域中事件來源 (EventSource 物件所產生之所有事件的目標) 實作。 建立新的事件接聽程式時,它會以邏輯方式附加至該應用程式域中的所有事件來源。

注意

此型別代表 IDisposable 介面。 當您完成使用類型時,必須直接或間接處置它。 若要直接處置型別,請呼叫其 try/catch 區塊中的 Dispose 方法。 若要間接處置它,請使用語言建構函式,例如 using (在 C# 中) 或 Using (在 Visual Basic 中)。 如需詳細資訊,請參閱 IDisposable 介面文章中的<使用實作 IDisposable 的物件>一節。

事件接聽程式可以使用事件層級來啟用或停用每個目前事件來源,方法是使用事件層級 (EventLevel) 和事件關鍵詞 (EventKeywords) 進一步限制要傳送給接聽程式的一組事件。 接聽程式也可以使用 方法,將任意命令傳送至特定的目前事件來源 SendCommand 。 命令的意義專屬於事件來源的實作。

您可以在單一應用程式域中定義多個事件接聽程式。 每個接聽程式在邏輯上與其他接聽程式無關,讓一個接聽程式啟用或停用的事件只會影響該接聽程式。 使用 SendCommand 方法傳送的命令可以執行語意作業, (例如垃圾收集或排清影響其他接聽程序的數據) ,但這是例外狀況,而不是規則。

每個事件來源都會保留傳送事件的事件接聽程序清單。 一組篩選準則會與每個事件來源接聽程式配對相關聯。 這些準則會決定接聽程式將接收目前事件來源的事件。 接聽程式會在其方法上 OnEventWritten 接收事件。 因此,的 EventListener 子類別必須覆寫這個方法,才能對數據執行有用的動作。

建立新的事件來源時,會 OnEventSourceCreated 呼叫 方法。 每個目前的事件接聽程式只會針對可傳送記錄訊息的每個目前事件來源取得一個 OnEventSourceCreated 呼叫。 建立事件接聽程式時,會進行一連串 OnEventSourceCreated 呼叫,以通知新接聽程式在建立接聽程式之前存在的所有事件來源。

重要

具現化 EventListener時,建構函式完成之前,會回呼 OnEventSourceCreatedOnEventWritten 。 當您初始化這些回呼中使用的實例成員時,請小心。

建構函式

EventListener()

建立 EventListener 類別的新執行個體。

方法

DisableEvents(EventSource)

停用指定之事件來源的所有事件。

Dispose()

EventListener 類別的目前執行個體所使用的資源釋出。

EnableEvents(EventSource, EventLevel)

啟用具有指定詳細資訊層級或更低之指定事件來源的事件。

EnableEvents(EventSource, EventLevel, EventKeywords)

啟用具有指定詳細等級或更低且符合關鍵字旗標之指定事件來源的事件。

EnableEvents(EventSource, EventLevel, EventKeywords, IDictionary<String,String>)

啟用具有指定詳細資訊層級或更低且符合關鍵字旗標及引數之指定事件來源的事件。

Equals(Object)

判斷指定的物件是否等於目前的物件。

(繼承來源 Object)
EventSourceIndex(EventSource)

取得小的非負數,其代表指定的事件來源。

GetHashCode()

做為預設雜湊函式。

(繼承來源 Object)
GetType()

取得目前執行個體的 Type

(繼承來源 Object)
MemberwiseClone()

建立目前 Object 的淺層複製。

(繼承來源 Object)
OnEventSourceCreated(EventSource)

當事件接聽程式已建立且新事件來源已附加至接聽程式時,針對所有現有的事件來源來呼叫。

OnEventWritten(EventWrittenEventArgs)

每當事件由事件接聽程式已啟用事件的事件來源寫入時呼叫。

ToString()

傳回代表目前物件的字串。

(繼承來源 Object)

事件

EventSourceCreated

發生於將事件來源 (EventSource 物件) 附加至發送器時。

EventWritten

發生於事件已由事件接聽程式已啟用事件的事件來源 (EventSource 物件) 寫入時。

適用於