4

C#/XAML の Windows 8 アプリケーションでは、特定のリソース ファイルにアクセスする必要があります。WP7 では resx ファイルを使用していましたが、現在は resw ファイルを使用する必要があるようです。言語リソース ファイルではありません。私のファイルは ConfigResources.resw と呼ばれ、「ConfigFile」という 1 つのキーと文字列という値だけが含まれています。

コードからアクセスするにはどうすればよいですか? 私は運なしでこれを試しました:

   var storedConfigFile = Application.Current.Resources["ConfigResources"];

次に、コードから内部のキーの値を編集するにはどうすればよいですか?

ありがとうございました

4

3 に答える 3

7

Windowsストアアプリプロジェクトのコードでローカライズされたリソースを簡単に使用できるResWファイルコードジェネレーターと呼ばれるCodePlexで最近プロジェクトを作成しました。これは、フル バージョンの .NET で使用される ResX ファイルと同様のヘルパー クラスを自動的に生成および更新するカスタム ツールです。

于 2012-11-15T06:26:54.060 に答える
5

hereによると、を使用する必要がWindows.ApplicationModel.Resources.ResourceLoaderあり、Windows.ApplicationModel.Resources.Core名前空間は resw ファイルとの対話を提供します。

次のようになります。

var loader = new Windows.ApplicationModel.Resources.ResourceLoader();
var text = loader.GetString("Farewell");

または、クロスプラットフォーム ライブラリを作成している場合は、以下を使用してそれを行うこともできますSystem.Resources.ResourceManager

System.Resources.ResourceManager クラスは Windows ストア アプリ用の .NET に含まれていますが、その使用はお勧めしません。ResourceManager は、ポータブル クラス ライブラリ プロジェクトとして開発され、複数のプラットフォームを対象とするライブラリでのみ使用してください。

ここからこのように:

ResourceManager rm = new ResourceManager("Strings", typeof(Example).Assembly);
string timeString = rm.GetString("TimeHeader");
于 2012-09-05T13:30:20.917 に答える
4

WinRT アプリでリソースを読み取るさまざまな方法を示すサンプルがあります (つまり、resw ファイルから)。

于 2012-09-13T20:08:26.173 に答える