概要

WPF とか XAML とか C# とか。未整理。

Table of Contents

多言語対応

基本形

リソースファイルを言語ごとに作成する。ファイル名の命名に注意。

<プロジェクト>
 +- Properties
     +- Resource.resx
     +- Resource.ja-JP.resx

ビルドすると Resource.resx は本体埋め込み、それ以外は言語ごとに DLL ファイルになる。

<出力先>
 +- <アセンブリ名>.exe
 +- ja-JP/
     +- <アセンブリ名>.resources.dll

所感

「日本語と英語以外に対応する気なんてねーよ」って場合、別ファイル(*.dll)に分けるのは大袈裟な気がする。まぁ勝手に分けられちゃうんだけど。

応用?形

DLL ファイルを作らせずに実行可能ファイルに全部埋め込む方法。下記参考 URI 参照。他にも方法あるんかな?

所感

リンク先の例で言うと、StringTable と StringTable_en_US の間には継承関係が無い。同じインターフェースの実装というわけでもない。同名のプロパティがあるというだけ。

なので XAML に Binding する分には良いけど、ソースコード中でリソース参照する際は、現在のカルチャーで分岐とかしなきゃならん。実にイケてない。

それとも一手間加えればこの辺うまいこと解決できるんかな…

参考 URI


トップ   差分 バックアップ リロード   一覧 単語検索 最終更新   ヘルプ   最終更新のRSS