取得
CultureInfo,表示資源管理員用以在 Run Time 查詢特定文化特性資源的目前文化特性。
命名空間: System.Globalization
組件: mscorlib (在 mscorlib.dll 中)
Public Shared ReadOnly Property CurrentUICulture As CultureInfo
Dim value As CultureInfo
value = CultureInfo.CurrentUICulture
public static CultureInfo CurrentUICulture { get; }
public:
static property CultureInfo^ CurrentUICulture {
CultureInfo^ get ();
}
/** @property */
public static CultureInfo get_CurrentUICulture ()
public static function get CurrentUICulture () : CultureInfo
屬性值
CultureInfo,表示資源管理員用以在 Run Time 查詢特定文化特性資源的目前文化特性。
文化特性為執行中執行緒的屬性。這個屬性傳回 Thread.CurrentUICulture。當執行緒啟動時,會使用 Windows API 中的 GetUserDefaultUILanguage 來初步決定它的 UI 文化特性。若要變更執行緒使用的 UI 文化特性,請設定 Thread.CurrentUICulture 為新的文化特性。SecurityPermission 的 ControlThread 旗標必須加以設定,才能變更 Thread.CurrentThread 的文化特性。因為安全狀態與執行緒息息相關,操作執行緒會很危險。因此,只應該將這個使用權限給予可靠的程式碼,而且只有在必要時才這麼做。您無法在非完全信任程式碼中變更執行緒的文化特性。
下列程式碼範例會示範如何變更目前執行緒的 CurrentCulture 和 CurrentUICulture。
Imports System
Imports System.Globalization
Imports System.Security.Permissions
Imports System.Threading
<assembly: SecurityPermission(SecurityAction.RequestMinimum, ControlThread := True)>
Public Class SamplesCultureInfo
Public Shared Sub Main()
' Displays the name of the CurrentCulture of the current thread.
Console.WriteLine("CurrentCulture is {0}.", CultureInfo.CurrentCulture.Name)
' Changes the CurrentCulture of the current thread to th-TH.
Thread.CurrentThread.CurrentCulture = New CultureInfo("th-TH", False)
Console.WriteLine("CurrentCulture is now {0}.", CultureInfo.CurrentCulture.Name)
' Displays the name of the CurrentUICulture of the current thread.
Console.WriteLine("CurrentUICulture is {0}.", CultureInfo.CurrentUICulture.Name)
' Changes the CurrentUICulture of the current thread to ja-JP.
Thread.CurrentThread.CurrentUICulture = New CultureInfo("ja-JP", False)
Console.WriteLine("CurrentUICulture is now {0}.", CultureInfo.CurrentUICulture.Name)
End Sub 'Main
End Class 'SamplesCultureInfo
'This code produces the following output, if the ControlThread permission is granted (for example, if this code is run from the local drive).
'
'CurrentCulture is en-US.
'CurrentCulture is now th-TH.
'CurrentUICulture is en-US.
'CurrentUICulture is now ja-JP.
using System;
using System.Globalization;
using System.Security.Permissions;
using System.Threading;
[assembly:SecurityPermission( SecurityAction.RequestMinimum, ControlThread = true )]
public class SamplesCultureInfo {
public static void Main() {
// Displays the name of the CurrentCulture of the current thread.
Console.WriteLine( "CurrentCulture is {0}.", CultureInfo.CurrentCulture.Name );
// Changes the CurrentCulture of the current thread to th-TH.
Thread.CurrentThread.CurrentCulture = new CultureInfo( "th-TH", false );
Console.WriteLine( "CurrentCulture is now {0}.", CultureInfo.CurrentCulture.Name );
// Displays the name of the CurrentUICulture of the current thread.
Console.WriteLine( "CurrentUICulture is {0}.", CultureInfo.CurrentUICulture.Name );
// Changes the CurrentUICulture of the current thread to ja-JP.
Thread.CurrentThread.CurrentUICulture = new CultureInfo( "ja-JP", false );
Console.WriteLine( "CurrentUICulture is now {0}.", CultureInfo.CurrentUICulture.Name );
}
}
/*
This code produces the following output, if the ControlThread permission is granted (for example, if this code is run from the local drive).
CurrentCulture is en-US.
CurrentCulture is now th-TH.
CurrentUICulture is en-US.
CurrentUICulture is now ja-JP.
*/
using namespace System;
using namespace System::Globalization;
using namespace System::Security::Permissions;
using namespace System::Threading;
[assembly:SecurityPermission(SecurityAction::RequestMinimum,ControlThread=true)];
int main()
{
// Displays the name of the CurrentCulture of the current thread.
Console::WriteLine( "CurrentCulture is {0}.", CultureInfo::CurrentCulture->Name );
// Changes the CurrentCulture of the current thread to th-TH.
Thread::CurrentThread->CurrentCulture = gcnew CultureInfo( "th-TH",false );
Console::WriteLine( "CurrentCulture is now {0}.", CultureInfo::CurrentCulture->Name );
// Displays the name of the CurrentUICulture of the current thread.
Console::WriteLine( "CurrentUICulture is {0}.", CultureInfo::CurrentCulture->Name );
// Changes the CurrentUICulture of the current thread to ja-JP.
Thread::CurrentThread->CurrentUICulture = gcnew CultureInfo( "ja-JP",false );
Console::WriteLine( "CurrentUICulture is now {0}.", CultureInfo::CurrentCulture->Name );
}
/*
This code produces the following output, if the ControlThread permission is granted (for example, if this code is run from the local drive).
CurrentCulture is en-US.
CurrentCulture is now th-TH.
CurrentUICulture is en-US.
CurrentUICulture is now ja-JP.
*/
import System.* ;
import System.Globalization.* ;
import System.Security.Permissions.* ;
import System.Threading.* ;
/** @assembly SecurityPermission(SecurityAction.RequestMinimum,
ControlThread = true)
*/
public class SamplesCultureInfo
{
public static void main(String[] args)
{
// Displays the name of the CurrentCulture of the current thread.
Console.WriteLine("CurrentCulture is {0}.",
CultureInfo.get_CurrentCulture().get_Name());
// Changes the CurrentCulture of the current thread to th-TH.
System.Threading.Thread.get_CurrentThread().set_CurrentCulture(
new CultureInfo("th-TH", false));
Console.WriteLine("CurrentCulture is now {0}.",
CultureInfo.get_CurrentCulture().get_Name());
// Displays the name of the CurrentUICulture of the current thread.
Console.WriteLine("CurrentUICulture is {0}.",
CultureInfo.get_CurrentUICulture().get_Name());
// Changes the CurrentUICulture of the current thread to ja-JP.
System.Threading.Thread.get_CurrentThread().set_CurrentUICulture(
new CultureInfo("ja-JP", false));
Console.WriteLine("CurrentUICulture is now {0}.",
CultureInfo.get_CurrentUICulture().get_Name());
} //main
} //SamplesCultureInfo
/*
This code produces the following output, if the ControlThread permission is
granted (for example, if this code is run from the local drive).
CurrentCulture is en-US.
CurrentCulture is now th-TH.
CurrentUICulture is en-US.
CurrentUICulture is now ja-JP.
*/
Windows 98、 Windows 2000 SP4、 Windows CE、 Windows Millennium Edition、 Windows Mobile for Pocket PC、 Windows Mobile for Smartphone、 Windows Server 2003、 Windows XP Media Center Edition、 Windows XP Professional x64 Edition、 Windows XP SP2、 Windows XP Starter Edition
.NET Framework 並不支援各種平台的所有版本。如需支援平台版本的相關資訊,請參閱系統需求一節的內容。
.NET Framework
支援版本:2.0、1.1、1.0
.NET Compact Framework
支援版本:2.0、1.0