私は、アプリケーションスコープのリソースを保存してアクセスするための2つの方法を知っており、使用しています。
- Properties \ Resources.resx
- フォルダを作成し、たとえば画像をそこに配置して、ビルドモードをリソースに設定します
パフォーマンスと複雑さの点で2つの方法の違いは何ですか、それぞれをいつ使用する必要があり、リソースはWPFとVBまたはC#コードでそれぞれの方法でどのように最適に消費されますか?
前もって感謝します、
ジュリアン
WPF プロジェクトで画像などのリソースを参照する「自然な」方法は、2 番目のオプションです。相対 URI を使用して画像を指すことができ、WPF はそれを遅延ロードします。パック URI 構文を使用して、他のアセンブリ内のリソースを参照できます。
を使用Resources.resx
すると、参照時にリソースをロードするプロパティがコード生成されます。リソースは、文字列、画像、アイコン、またはバイト配列にすることができます。XAML で使用{x:Static}
すると、コード ジェネレーターによって生成された静的プロパティを参照できますが、多くの場合、リソースの型を WPF で使用できる型に変換するコンバーターが必要になります。
を使用したローカリゼーションのサポートがいくつかありResources.resx
ます。多言語アプリケーションを提供する場合は、翻訳された文字列を に保存できますResources.resx
。ただし、 Microsoft が説明するWPF のローカリゼーションは、に基づいていませんResources.resx
。
画像の場合、2 番目のオプションの方がはるかに簡単です。文字列の場合、おそらく最初のオプションの方が簡単ですが、代わりに XAML のままでResourceDictionary
.