3

resxファイルを使用して、XAMLファイルで使用しているいくつかの文字列をローカライズしようとしています。私はウェブ上の他のドキュメントを見回しましたが、それらはすべて2つの部分からなるプロセスを推奨しているようです。

  1. 次のように、clr-namespaceをウィンドウに追加します。
    xmlns:props="clr-namespace:PJConfiguration.Properties"

  2. その名前空間を使用して、次のように文字列をローカライズします。
    Content="{x:Static props:Resources.SharedSettings}"

これを実行し、リソースクラスがパブリックであることも確認しましたが、手順2でXAMLから次のエラーが発生します。

タイプ「リソース」が見つかりません。

他に何がこの問題を引き起こしているのか誰かが知っていますか?前もって感謝します。

4

3 に答える 3

3

リソースを XAML に表示するには、リソースのコード生成モードがパブリックに設定されていることを確認する必要があります。VS では、リソース デザイナー ウィンドウの上部近くにある ComboBox にその設定があります。

XAML で .Net リソースを使用する方法の詳細については、次のブログ投稿を参照してください: http://wpfglue.wordpress.com/category/localization/

于 2012-08-21T20:32:01.100 に答える
2

.resxファイルがアプリケーションアセンブリのPropertiesディレクトリ内のデフォルトのResources.resxファイルであるかどうかを確認します。その場合、XAMLがローカルアセンブリの下の正しい名前空間からパブリッククラスResourcesを見つけることができなかった理由はありません。

于 2012-08-22T00:26:10.607 に答える
1

この回答で推奨されているように、手順 2 でアセンブリ名を指定してみてください。

于 2012-08-13T19:02:10.440 に答える