英語で読む

次の方法で共有


ResourceSet

ResourceManager によって作成される ResourceSet は、単一のカルチャのすべてのリソースを読み込んでキャッシュします。ただし、ResourceSet ではフォールバック機能が提供されないため、最も適しているのは、固有のロケールを扱うツールとローカライズされないアプリケーションです。WorldCalc を変更し、ResourceManager ではなく ResourceSet を使うようにする一例を次の 3 行のコードに示します。

private ResourceSet rs;
rs = rm.GetResourceSet(Thread.CurrentThread.CurrentUICulture, true, true); 
// Replace all occurrences of rm.GetString with rs.GetString.

Graphic.vb サンプル ファイルから、Visual Basic で同じ処理を行うコードを次に示します。

Private rs As ResourceSet 
rs = rm.GetResourceSet(Thread.CurrentThread.CurrentUICulture, true, true)
' Replace all occurrences of rm.GetString with rs.GetString.

最初の行は、ResourceSet 変数を宣言するだけです。2 行目は、現在のカルチャを渡して ResourceManager から ResourceSet を作成します。2 番目のパラメータは、まだ ResourceSet が読み込まれていない場合に、ResourceSet を作成するかどうかを制御します。3 番目のパラメータは、親の CultureInfo オブジェクトを読み込んでリソースを継承する必要があるかどうかを制御します。ResourceManagerResourceSet には、どちらも GetString メソッドが実装されています。3 行目は、コードに加える必要のある多少の変更を示しています。

WorldCalc サンプルを変更して再コンパイルし、英語のコンピュータで次のコマンド ラインを使用して実行します。

WorldCalc de-CH

この結果、後の図のようなアプリケーションが表示されます。