![](/img/trans.png)
[英]Is it possible to implement a WeakEventManager for UIElement.LayoutUpdated?
我有一個使用 LayoutUpdated-events 並需要注冊它們的應用程序。 這是問題,我在執行 WeakEventManager 期間遇到了問題 這就是發生的事情: 我們總是收到 null 作為發件人(根據 LayoutUpdated 的設計) null 被傳遞到 DeliverEven ...
[英]Is it possible to implement a WeakEventManager for UIElement.LayoutUpdated?
我有一個使用 LayoutUpdated-events 並需要注冊它們的應用程序。 這是問題,我在執行 WeakEventManager 期間遇到了問題 這就是發生的事情: 我們總是收到 null 作為發件人(根據 LayoutUpdated 的設計) null 被傳遞到 DeliverEven ...
[英]Generic Weak Event Manager Helper
如果要以通用的可靠方式使用System.Windows.WeakEventManager(組件WindowsBase),如何: 避免不必要的靜態處理程序注冊? 確保事件在源上存在。 由於已經考慮到使用,因此可能會有一些例外。 如何處理? WeakEventManag ...
[英]Microsoft.Win32.SystemEvents events don't work with WeakEventManager
當我做 我的OnDisplaySettingsChanged從未被調用。 但是,如果我改為通過SystemEvents.DisplaySettingsChanged += OnDisplaySettingsChanged使用常規事件訂閱, SystemEvents.DisplaySet ...
[英]WeakEventManager - event handler is not called
我無法重現該問題(並且項目太大,無法在此處發布,而且我不確定要發布的相關部分),並且我需要這里可能出問題的想法。 我有靜態事件的抽象類 然后,我通常使用WeakEventManager訂閱此事件: 並且由於某些原因,調用OnTest()時不會觸發弱事件處理程序。 一切(調 ...
[英]Is it safe to replace all standard event handler to WeakEventManager or its variants?
標准事件處理程序(帶有運算符+= )是內存泄漏的原因之一(如果它沒有被取消注冊/處置(帶有-=運算符))。 微軟通過WeakEventManager及其繼承解決了這個問題: PropertyChangedEventManager, CollectionChangedEventManager, Cu ...
[英]PCL WeakEventManager from Reactive extensions disposes event in 3 - 7 minutes
我正在嘗試使用Reactive庫在PCL中實現WeakEventManager。 所以重點是它為訂閱者保留了一個弱引用,並且每次事件觸發時 - 它獲取訂閱者的委托並觸發它,但是如果他無法從弱引用中獲取對象,那么它將鏈接部署到代表。 問題是在很短的時間之后,弱引用返回null(但訂閱者 ...
[英]Weak events and GC
當我無法確定性地退訂時,我正在使用弱事件(否則,我希望+=和-=代替弱事件): 這樣,如果對象被垃圾回收,那么事件處理程序將不會被調用。 完善。 然而。 如果還沒有垃圾回收對象(但是沒有更多的強引用),則將繼續調用事件處理程序。 我的問題很籠統:使用弱事件時該怎么辦? ...
[英]CollectionChangedEventManager not forwarding event for custom collection
我有一個自定義的INotifyCollectionChanged類,該類實際上只是包裝了標准的ObservableCollection 。 每當添加/刪除某些內容時,都會按預期引發CollectionChanged事件。 但是,當我嘗試使用WeakEventListener偵聽此事件時,偵聽 ...
[英]C# Is it possible to use the weak event pattern with a static class?
我有一個靜態類,因為我不喜歡傳遞一個巨大的設置文件的想法,但是我希望能夠讓實例訂閱靜態類上的靜態事件。 我一直在研究使用PropertyChangedEventManager的AddListener方法,但需要添加一個實例。 這有可能嗎? 我在.net 4.0上,以防萬一。 ...
[英]Why WeakEventManager does not fire an event when the sender is not the nominal?
我不喜歡不合標准的模式,但我正在對我的應用程序進行快速測試,並且我遇到了這種奇怪的行為。 考慮一個暴露事件的普通類,這里是非常常見的PropertyChanged,但我認為可能是其他任何一個。 訂戶選擇通過WeakEventManager幫助程序訂閱事件。 現在,“奇怪”的東西是實 ...
[英]C# listening to 3rd party long living event using weak reference
我將附加到第3個長期活動的Deleted事件發布者方,由於事件處理程序,該發布者最終使我可能短暫存在的對象保持活動狀態。 Deleted事件很可能永遠不會觸發,如果發生,我只需要處理就可以了。 取消訂閱Deleted事件的位置並不明顯,因此我希望對其進行弱引用,以便可以對我的對象進行GC。 ...
[英]WeakEventManager with event name lambda expression and custom event accessors
我一直在尋找使用弱事件模式訂閱事件。 使用.NET 4.5框架,我們有一個漂亮的WeakEventManager類。 弱訂閱活動很簡單 然而,我並不是'串式'代碼的忠實粉絲。 我一直試圖找到一種方法來使用事件的字符串名稱來訂閱。 我發現獲取事件名稱的唯一方法是在定義事件的類中使用 ...
[英]Why using Weak Event Pattern on controls instead of managing lifetime somewhere else?
我理解弱參考和弱事件模式。 使用弱事件模式的一個地方是Controls和DataModel之間的DataBinding。 在DataBinding的過程中,如果DataModel支持INotifyPropertyChange,Control將要求DataModel通過事件通知他。 如果 ...
[英]How do weak events work?
我目前正在學習WPF,並且偶然發現了弱事件的概念,但我真的很想“得到它”。 我已經在Stackoverflow上閱讀了無數文章並查看了代碼示例,但它並沒有陷入其中。 這是我的困境: 我理解,當一個對象訂閱一個事件時,事件的來源必須保持對訂閱者的引用。 我也理解,如果訂閱 ...
[英]emddudley's WeakEventManager's sample
我正在嘗試將Michael Dudley的示例代碼改編為自己的弱事件管理器實現: 使用.NET的WeakEventManager實現弱事件的示例實現 我想知道如何將我的用戶代碼放在我自己的處理程序中? 我看到這個: 我會用自己的自定義代碼替換該表達式的內容嗎? 謝謝, ...
[英]What's a good implementation of weak events for silverlight?
我正在為Silverlight很好地實現弱事件模式以避免內存泄漏。 似乎有一些實現,但代碼不是微不足道的,很難知道哪一個是正確的。 我找不到微軟的任何官方推薦。 如果可能的話,我會使用簡單的語法。 干杯。 ...
[英]WeakEvent garbage collection in C#
我今天在以下場景中思考: 我有兩個A和B班。 A公開事件E. B使用弱事件處理程序“W”訂閱此事件“E”。 過了一會兒,沒有人提到任何B,但GC還沒有開始。 雖然GC尚未收集B且A引發“E”,但弱事件處理程序是否會被調用? 我想是的,但如果我沒有遺漏某些東西, ...
[英]C# language: why WeakReference or Weak Event Pattern?
我正在閱讀“The C# 語言”,第 4 版,它談到了WeakReference和Weak Event Pattern : CHRISTIAN NAGEL:Memory 泄漏通常是由於事件使用不當造成的。 如果客戶端對象附加到事件但不與它們分離,並且不再使用對客戶端 object 的引用,則垃圾 ...
[英]Do WPF controls use weak events in their bindings?
當我在WPF中使用數據綁定時,我的目標控件正在偵聽綁定源上的事件。 例如,我可能有一個ListView監聽ObservableCollection上的CollectionChanged事件。 如果事件源的生命周期預計超過事件偵聽器的生命周期,則可能存在內存泄漏,應使用弱事件模式 。 ...
[英]Example implementation of weak events using .NET's WeakEventManager
是否有使用.NET的WeakEventManager的弱事件的示例實現? 我正在嘗試通過遵循文檔中的“Notes to Inheritors”來實現它,但它很模糊。 例如,我無法弄清楚如何從我的自定義管理器中的靜態AddListener函數調用ProtectedAddListener 。 ...