次の方法で共有


方法 : Visual Basic で、ローカライズされたリソースを取得する

更新 : 2007 年 11 月

My.Resources オブジェクトを使用すると、アプリケーションを実行中のコンピュータのカルチャ設定に基づいて、ローカライズされたアプリケーション リソースを取得できます (用意されている場合)。コンピュータのカルチャ設定は、My.Application.UICulture プロパティを設定することによりオーバーライドできます。

ランタイムはカルチャの署名、つまり名前によって、ローカライズされたリソースを識別します。My.Resources オブジェクトで表示されるプロパティは、プロジェクトの既定のリソース ファイルである Resources.resx により決定されます。ローカライズされたリソースを用意するためには、以下の操作が必要です。

  • リソース ファイルをコピーし、Resources.CultureSignature.resx に名前を変更します。

  • 文字列、およびリソース ファイルが参照するファイルをローカライズします。

  • ローカライズされたリソース ファイルをプロジェクトに追加します。

My.Resources オブジェクトは、それぞれのリソースを読み取り専用プロパティとして公開します。プロパティの名前はリソース名と同じです。プロパティの型はリソースの分類によって決定されます。詳細については、「My.Resources オブジェクト」および「アプリケーションのリソース」を参照してください。

各カルチャは一意の名前を持ちます。この名前は、言語と関連付けられた 2 文字の小文字のカルチャ名と、必要に応じて、国または地域と関連付けられた 2 文字の大文字のサブカルチャ名の組み合わせで構成されます。サブカルチャ名がある場合は、カルチャ名の後ろにダッシュ (-) で区切って続けます。たとえば、日本の日本語を表す ja-JP、米国の英語を表す en-US、ドイツのドイツ語を表す de-DE (オーストリアのドイツ語を表す de-AT などのフォールバック カルチャとは異なります) などがあります。カルチャ名の詳細については、「CultureInfo」を参照してください。

使用例

この例では、Message という名前の、フランスのカルチャのバージョンのアプリケーションの文字列リソースを取得します。

My.Resources オブジェクトが使用するカルチャを変更するために、この例では My.Application.ChangeUICulture メソッドを使用しています。

Sub ShowLocalizedMessage()
    Dim culture As String = My.Application.UICulture.Name
    My.Application.ChangeUICulture("fr-FR")
    MsgBox(My.Resources.Message)
    My.Application.ChangeUICulture(culture)
End Sub

この例が動作するためには、アプリケーションのリソース ファイルに Message という名前の文字列があり、かつアプリケーションは、そのリソース ファイルのフランスのカルチャのバージョンである Resources.fr-FR.resx を持っている必要があります。詳細については、「方法 : リソースを追加または削除する」を参照してください。

アプリケーションに、このリソース ファイルのフランスのカルチャのバージョンがない場合は、My.Resource オブジェクトは、既定のカルチャのリソース ファイルからリソースを取得します。

参照

処理手順

方法 : Visual Basic で文字列リソースを取得する

参照

My.Resources オブジェクト

その他の技術情報

アプリケーション リソースの管理