我們使用ResourceDictionaries存儲我們的應用程序的佈局信息。惰性初始化非常好,因爲只有在創建元素時才能獲取元素的所需佈局。問題是每個元素都從ResourceDictionary
獲取共享佈局的每個元素的實例(或者如果它超出了範圍並且稍後需要,那麼它們是相同的)。WPF ResourceDictionary是否可以爲每個請求返回一個新實例
我們可以將模板存儲在字典中,然後共享它們並不重要,但如果不是用於此緩存行爲,我們會有相當不錯的系統。
有沒有方法可以改變字典的這種行爲,或者我將不得不編寫自己的類來根據需要從XAML創建項目?
「ResourceDictionary」是否包含另一個「ResourceDictionary」中的項目? 'x:Shared =「false」'在這種情況下不起作用 –
@JRoughan它的*緩存行爲有什麼問題*?我不明白,你爲什麼要關閉它?你能說明一下你的問題嗎?這只是爲了我的好奇心。謝謝。 – DHN
我想關閉它,因爲它沒有保存模板,它保留了應該基於提供的密鑰實例化的實際框架元素 – JRoughan