WeakEventManager.ProtectedRemoveListener(Object, IWeakEventListener) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Удаляет предварительно добавленный прослушиватель из указанного источника.
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)
Параметры
- source
- Object
Источник, из которого удаляются прослушиватели.
- listener
- IWeakEventListener
Прослушивающий класс (который должен реализовать IWeakEventListener).
Комментарии
Вызовите этот метод в методах класса RemoveListener
диспетчера для WeakEventManager реализаций.
RemoveListener
— это предлагаемое имя статического метода, определенного в классе диспетчера, чтобы другие классы могли удалить прослушиватель для шаблона слабых событий.
RemoveListener
должен принимать два параметра: source
, где удаляется прослушиватель, и listener
класс . Для реализации RemoveListener
вызовите ProtectedRemoveListener метод в текущем диспетчере и передайте те же два параметра.
Если вызов удаляет ProtectedRemoveListener последний прослушиватель в списке, вызывает StopListening метод внутренне, ProtectedRemoveListener который вызовет конкретное StopListening переопределение через полиморфизм.
ProtectedRemoveListener удаляет прослушиватели из одного внутреннего WeakEventManager.ListenerList объекта на source
. Если реализация руководителя поддерживает несколько списков прослушивателей для каждой комбинации источников событий, не используйте ProtectedRemoveListener. Вместо этого реализация должна создавать собственные WeakEventManager.ListenerList экземпляры, RemoveListener
удалять прослушиватели из соответствующего списка, а события должны доставляться в соответствующий список прослушивателей путем вызова DeliverEventToList метода вместо DeliverEvent метода .