WeakEventManager.ProtectedRemoveListener(Object, IWeakEventListener) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Odebere dříve přidaný naslouchací proces ze zadaného zdroje.
protected:
void ProtectedRemoveListener(System::Object ^ source, System::Windows::IWeakEventListener ^ listener);
protected void ProtectedRemoveListener (object source, System.Windows.IWeakEventListener listener);
member this.ProtectedRemoveListener : obj * System.Windows.IWeakEventListener -> unit
Protected Sub ProtectedRemoveListener (source As Object, listener As IWeakEventListener)
Parametry
- source
- Object
Zdroj, ze který se mají odebrat naslouchací procesy.
- listener
- IWeakEventListener
Třída naslouchání (která musí implementovat IWeakEventListener).
Poznámky
Volejte tuto metodu v rámci metod třídy RemoveListener
manager na WeakEventManager implementacích.
RemoveListener
je navrhovaný název pro statickou metodu, kterou definujete ve třídě manager, aby ostatní třídy mohly odebrat naslouchací proces pro slabý vzor událostí.
RemoveListener
by měl mít dva parametry: místo source
, kde je naslouchací proces odebrán, a listener
třídu . Pro vaši implementaci zavolejte RemoveListener
metodu ProtectedRemoveListener pro aktuálního správce a předejte stejné dva parametry.
Pokud volání odebere ProtectedRemoveListener poslední naslouchací proces v seznamu, ProtectedRemoveListener zavolá interně metodu StopListening , která zavolá vaše konkrétní StopListening přepsání prostřednictvím polymorfismu.
ProtectedRemoveListenerodebere naslouchací procesy z jednoho interního WeakEventManager.ListenerList naslouchací proces na .source
Pokud vaše implementace nadřízený udržuje více než jeden seznam naslouchacích procesů pro každou kombinaci zdroje událostí, nepoužívejte ProtectedRemoveListener. Místo toho by implementace měla vytvořit vlastní WeakEventManager.ListenerList instance, RemoveListener
měla by odebrat naslouchací procesy z příslušného seznamu a události by se měly doručovat do příslušného seznamu naslouchacích DeliverEvent procesů voláním DeliverEventToList metody místo metody .