我们使用ResourceDictionaries存储我们的应用程序的布局信息。惰性初始化非常好,因为只有在创建元素时才能获取元素的所需布局。问题是每个元素都从ResourceDictionary
获取共享布局的每个元素的实例(或者如果它超出了范围并且稍后需要,那么它们是相同的)。WPF ResourceDictionary是否可以为每个请求返回一个新实例
我们可以将模板存储在字典中,然后共享它们并不重要,但如果不是用于此缓存行为,我们会有相当不错的系统。
有没有方法可以改变字典的这种行为,或者我将不得不编写自己的类来根据需要从XAML创建项目?
“ResourceDictionary”是否包含另一个“ResourceDictionary”中的项目? 'x:Shared =“false”'在这种情况下不起作用 –
@JRoughan它的*缓存行为有什么问题*?我不明白,你为什么要关闭它?你能说明一下你的问题吗?这只是为了我的好奇心。谢谢。 – DHN
我想关闭它,因为它没有保存模板,它保留了应该基于提供的密钥实例化的实际框架元素 – JRoughan