WeakEventManager.ListenerList 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
提供內建的集合清單以用於儲存 WeakEventManager 的接聽程式。
protected: ref class WeakEventManager::ListenerList
protected class WeakEventManager.ListenerList
Protected Class WeakEventManager.ListenerList
- 繼承
-
WeakEventManager.ListenerList
- 衍生
備註
雖然此清單包含類似 和 ICollection 所定義 IList 的成員,並提供類似的功能,但此類別不會實作這些介面。
大部分 WeakEventManager 的衍生類別不需要在 上使用 WeakEventManager.ListenerList 任何成員。 方法和 WeakEventManagerProtectedAddListenerProtectedRemoveListener 在內部使用預設 WeakEventManager.ListenerList ,每個 清單各 source
一個。
如果您的 WeakEventManager 類別針對相同的事件來源組合維護多個清單,且每個清單建立以考慮事件的不同條件,您只需要呼叫 WeakEventManager.ListenerList 方法。 在此情況下,您不會使用 ProtectedAddListener , ProtectedRemoveListener 而是改為實 AddListener
作或 RemoveListener
只對其中一個內部接聽程式清單中的接聽程式採取行動,通常是根據您新增至 AddListener
或 RemoveListener
的參數。 此外,接收未經處理事件的處理常式實作不能直接呼叫 DeliverEvent ;您必須改為追蹤事件的特定專案,並使用 只將事件傳遞至適當的清單 DeliverEventToList 。
提供 的各種方法 WeakEventManager.ListenerList 可讓您使用內部清單,以便在事件的實際傳遞期間防止修改清單。
使用此實作技術的範例類別是 PropertyChangedEventManager ,它會根據屬性變更來 PropertyChanged
維護個別接聽程式清單。
XAML 文字使用方式
您無法在 XAML 中使用這個類別。
建構函式
WeakEventManager.ListenerList() |
初始化 WeakEventManager.ListenerList 類別的新執行個體。 |
WeakEventManager.ListenerList(Int32) |
使用指定的初始容量,初始化 WeakEventManager.ListenerList 類別的新執行個體。 |
屬性
Count |
取得 WeakEventManager.ListenerList 中所含的項目數。 |
Empty |
取得值,這個值表示用於比較的空白清單。 |
IsEmpty |
取得值,宣告這個 WeakEventManager.ListenerList 是否為空白。 |
Item[Int32] |
取得或設定 WeakEventManager.ListenerList 中的指定接聽程式項目。 |
方法
Add(IWeakEventListener) | |
AddHandler(Delegate) |
將事件處理常式加入至 WeakEventManager.ListenerList。 |
BeginUse() |
宣告清單為使用中。 這樣可避免在清單項目重覆時對清單做出直接變更。 |
Clone() |
建立這個 WeakEventManager.ListenerList 的可修改複製品。 |
CopyTo(WeakEventManager+ListenerList) |
將目前的 WeakEventManager.ListenerList 複製到指定的 WeakEventManager.ListenerList 。 |
DeliverEvent(Object, EventArgs, Type) |
將受管理的事件傳遞給 WeakEventManager.ListenerList 中的每一個接聽程式。 |
EndUse() |
解除鎖定 BeginUse() 所初始化的鎖定狀態。 |
Equals(Object) |
判斷指定的物件是否等於目前的物件。 (繼承來源 Object) |
GetHashCode() |
做為預設雜湊函式。 (繼承來源 Object) |
GetType() |
取得目前執行個體的 Type。 (繼承來源 Object) |
MemberwiseClone() |
建立目前 Object 的淺層複製。 (繼承來源 Object) |
PrepareForWriting(WeakEventManager+ListenerList) |
查看提供的清單是否為使用中,如果為使用中則將清單參考參數設定成清單複本,而不是原始清單。 |
Purge() |
將基礎參考目標為 null 參考之清單中的所有項目移除。 |
Remove(IWeakEventListener) |
從 WeakEventManager.ListenerList 移除第一個相符的接聽程式項目。 |
RemoveHandler(Delegate) |
從 WeakEventManager.ListenerList 移除事件處理常式。 |
ToString() |
傳回代表目前物件的字串。 (繼承來源 Object) |