UWP中的弱事件模式

时间:2018-02-23 06:05:31

标签: c# .net xaml uwp

在WPF中,有一些类,例如PropertyChangedEventManagerCollectionChangedEventManager,它们派生自WeakEventManager,旨在实现弱事件模式。通过弱事件模式,解决了正常事件中的内存泄漏问题。

但我在UWP SDK中找不到这些类,因为UWP还需要在数据绑定中处理PropertyChanged INotifyPropertyChanged事件CollectionChanged事件INotifyCollectionChanged,所以如何UWP解决了事件内存泄漏问题吗?

1 个答案:

答案 0 :(得分:2)

UWP Community Toolkit有一个WeakEventListener。这对你有用吗?

Example here

        WeakEventListener<SampleClass, object, EventArgs> weak = new WeakEventListener<SampleClass, object, EventArgs>(sample);

        weak.OnEventAction = (instance, source, eventArgs) => { isOnEventTriggered = true; };

        weak.OnDetachAction = (listener) => { isOnDetachTriggered = true; };


        sample.Raisevent += weak.OnEvent;