WeakEventManager.ProtectedRemoveListener(Object, IWeakEventListener) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
从提供的源中移除以前添加的侦听器。
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)。
注解
在实现的WeakEventManager管理器类RemoveListener
方法中调用此方法。
RemoveListener
是在管理器类上定义的静态方法的建议名称,使其他类能够删除弱事件模式的侦听器。
RemoveListener
应采用两个参数: source
删除侦听器的 和 listener
类。 对于实现 RemoveListener
,请在当前管理器上调用 ProtectedRemoveListener 方法并传递相同的两个参数。
如果 对 的 ProtectedRemoveListener 调用删除了列表中的最后一个侦听器, ProtectedRemoveListener 请在内部调用 StopListening 方法,该方法将通过多态性调用特定 StopListening 替代。
ProtectedRemoveListener从每个 source
的单个内部WeakEventManager.ListenerList中删除侦听器。 如果管理器实现为每个事件源组合维护多个侦听器列表,请不要使用 ProtectedRemoveListener。 相反,实现应创建自己的 WeakEventManager.ListenerList 实例, RemoveListener
应从相应的列表中删除侦听器,并且应通过调用 DeliverEventToList 方法而不是 DeliverEvent 方法将事件传递到相应的侦听器列表。