情報
要求されたトピックは次のとおりです。しかし、このトピックはこのライブラリには含まれていません。

CultureInfo.CurrentUICulture プロパティ

2013/12/12

実行時にカルチャ固有のリソースを参照するためにリソース マネージャーによって使用される現在のカルチャを表す CultureInfo オブジェクトを取得します。

Namespace:  System.Globalization
アセンブリ:  mscorlib (mscorlib.dll 内)

'宣言
Public Shared ReadOnly Property CurrentUICulture As CultureInfo

プロパティ値

型: System.Globalization.CultureInfo
実行時にカルチャ固有のリソースを参照するために、リソース マネージャーによって使用される現在のカルチャを表すオブジェクト。

現在の UI カルチャは、実行中のスレッドのプロパティです。このプロパティは、System.Threading.Thread.CurrentThread.CurrentUICulture プロパティの値を返します。

現在の UI カルチャを明示的に設定する

CultureInfo.CurrentUICulture プロパティは読み取り専用ですが、現在のスレッドの Thread.CurrentUICulture プロパティを明示的に設定することによって、その値を変更できます。現在の UI カルチャは、特定のカルチャ ("en-US"、"de-DE" など) に設定することもできれば、ニュートラル カルチャ ("en"、"de" など) に設定することもできます。

マルチスレッド アプリケーションでは、どのスレッドの UI カルチャも、スレッドの Thread.CurrentUICulture プロパティを対象カルチャを表す CultureInfo オブジェクトに設定することにより、明示的に設定できます。

現在の UI カルチャを暗黙的に設定する

スレッドが作成されると (メイン アプリケーション スレッドの場合も含めて)、その現在の UI カルチャは、既定でシステムの既定カルチャを使用して設定されます。

システムにインストールされている UI カルチャでもユーザーの優先 UI カルチャでもない特定の UI カルチャを設定していて、アプリケーションがマルチ スレッドを開始すると、それらのスレッドの現在の UI カルチャは、既定のシステム カルチャになります。

現在のスレッドの CurrentCultureCurrentUICulture を変更する方法を次の例に示します。


Imports System.Globalization
Imports System.Threading

Public Class Example

   Public Shared Sub Demo(ByVal outputBlock As System.Windows.Controls.TextBlock)
      ' Displays the name of the CurrentCulture of the current thread.
      outputBlock.Text += String.Format("CurrentCulture is {0}.", CultureInfo.CurrentCulture.Name) & vbCrLf

      ' Changes the CurrentCulture of the current thread to th-TH.
      Thread.CurrentThread.CurrentCulture = New CultureInfo("th-TH")
      outputBlock.Text += String.Format("CurrentCulture is now {0}.", CultureInfo.CurrentCulture.Name) & vbCrLf

      ' Displays the name of the CurrentUICulture of the current thread.
      outputBlock.Text += String.Format("CurrentUICulture is {0}.", CultureInfo.CurrentUICulture.Name) & vbCrLf

      ' Changes the CurrentUICulture of the current thread to ja-JP.
      Thread.CurrentThread.CurrentUICulture = New CultureInfo("ja-JP")
      outputBlock.Text += String.Format("CurrentUICulture is now {0}.", CultureInfo.CurrentUICulture.Name) & vbCrLf
   End Sub
End Class
'This code produces the following output:
'       CurrentCulture is en-US.
'       CurrentCulture is now th-TH.
'       CurrentUICulture is en-US.
'       CurrentUICulture is now ja-JP.


Windows Phone OS

サポート: 8.0, 7.1, 7.0

表示: