今回はC#だけ、それもVisualStudioの話。
リソースファイルからの文字列取得の方法。
ちゃんと常日頃から使っていればわかると思うんだけど、
ぼかぁ分かりませんでした。
なので、忘れないように書いておきます。
そもリソースファイルがあると何がいいのか?
面倒くさいときはソースコード内に直に書いてしまいがちなんですが、
リソースファイルに書いて、それを取っていく形にしていくと、
多言語対応の時であったり、いろんな場所で使用されているメッセージだったり
というのを、簡単に管理できるようになります。
試作でバーッと作る時であったり、ちょっと調べる時などは
面倒くさいんで敬遠しがちなんですが、
仕事でアプリケーションの多言語するときに、ソースコード直書きを変えるのが
とてもとてもつらかったので、可能な時は活用していきたい。
Resources.resxファイルの作成
VisualStudioでC#アプリケーションを作成する際の
フォームアプリケーションの場合は大体デフォルトでついてますね。
それ以外の場合は「追加>新しい項目」から「リソースファイル」で作成
リソースファイルに文字を定義、文字の取得
ファイルを作成したら、ダブルクリックで開いて
使用する文字列を定義していきます。
下記のような感じ。
使い方は「Properties.Resources.***」の形で名前を指定する感じ。
下記のような形で呼び出せば「strkey1_message」に定義されている値
「HelloWorld」がメッセージボックスで表示されます。
string strMessage = Properties.Resources.strkey1_message;MessageBox.Show(strMessage);
おわりに
Properties.Resources以下に定義されている変数みたいに
アクセスする感じですかね。
覚えておければいいんですが、
プロジェクト作成のたびに忘れるので自分用に書いておきます。
共通メッセージとか、暫定対応とか言ってコードに直書きして
それが本実装の時そのままになると、絶対修正漏れとか発生するので
可能なら、いつもこういった感じでリソースに管理できるといいっすね…
(遠い目)
0 件のコメント:
コメントを投稿