我知道并使用两种方法来存储和访问应用程序范围内的资源:
两种方法在性能和复杂性方面有何区别,何时应该使用每种方法以及每种方式在WPF和VB或C#代码中最佳消耗资源的方式是什么?
提前致谢,
儒略
答案 0 :(得分:6)
在WPF项目中引用资源(如图像)的“自然”方式是您的第二种选择。您可以使用相对URI指向图像,WPF将延迟加载它。您可以使用pack URI syntax参考其他装配中的资源。
使用Resources.resx
将代码生成在引用时加载资源的属性。资源可以是字符串,图像,图标或字节数组。在XAML中使用{x:Static}
允许您引用代码生成器生成的静态属性,但通常需要转换器将资源类型转换为WPF可用的类型。
使用Resources.resx
支持本地化,如果您想提供多语言应用程序,可以将翻译后的字符串存储在Resources.resx
中。但是,Microsoft描述的WPF localization不基于Resources.resx
。
对于图像,第二种选择更容易。对于字符串,第一个选项可能更容易,但您可以保留在XAML中并创建ResourceDictionary
。