Thread.CurrentUICulture Özellik
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Çalışma zamanında kültüre özgü kaynakları aramak için Resource Manager tarafından kullanılan geçerli kültürü alır veya ayarlar.
public:
property System::Globalization::CultureInfo ^ CurrentUICulture { System::Globalization::CultureInfo ^ get(); void set(System::Globalization::CultureInfo ^ value); };
public System.Globalization.CultureInfo CurrentUICulture { get; set; }
member this.CurrentUICulture : System.Globalization.CultureInfo with get, set
Public Property CurrentUICulture As CultureInfo
Özellik Değeri
Geçerli kültürü temsil eden bir nesne.
Özel durumlar
özelliği olarak null
ayarlanır.
özelliği, kaynak dosyasını bulmak için kullanılamayabilecek bir kültür adına ayarlanır. Kaynak dosya adları yalnızca harf, sayı, kısa çizgi veya alt çizgi içermelidir.
Yalnızca .NET Core ve .NET 5+ : Başka bir iş parçacığından bir iş parçacığının kültürünü okumak veya yazmak desteklenmez.
Örnekler
Aşağıdaki örnek, geçerli iş parçacığının kullanıcı arabirimi kültürünün dilinin Fransızca olup olmadığını belirler. Değilse, geçerli iş parçacığının kullanıcı arabirimi kültürünü İngilizce (Birleşik Devletler) olarak ayarlar.
using System;
using System.Globalization;
using System.Threading;
public class Example
{
public static void Main()
{
// Change the current culture if the language is not French.
CultureInfo current = Thread.CurrentThread.CurrentUICulture;
if (current.TwoLetterISOLanguageName != "fr") {
CultureInfo newCulture = CultureInfo.CreateSpecificCulture("en-US");
Thread.CurrentThread.CurrentUICulture = newCulture;
// Make current UI culture consistent with current culture.
Thread.CurrentThread.CurrentCulture = newCulture;
}
Console.WriteLine("The current UI culture is {0} [{1}]",
Thread.CurrentThread.CurrentUICulture.NativeName,
Thread.CurrentThread.CurrentUICulture.Name);
Console.WriteLine("The current culture is {0} [{1}]",
Thread.CurrentThread.CurrentUICulture.NativeName,
Thread.CurrentThread.CurrentUICulture.Name);
}
}
// The example displays the following output:
// The current UI culture is English (United States) [en-US]
// The current culture is English (United States) [en-US]
open System.Globalization
open System.Threading
// Change the current culture if the language is not French.
let current = Thread.CurrentThread.CurrentUICulture
if current.TwoLetterISOLanguageName <> "fr" then
let newCulture = CultureInfo.CreateSpecificCulture "en-US"
Thread.CurrentThread.CurrentUICulture <- newCulture
// Make current UI culture consistent with current culture.
Thread.CurrentThread.CurrentCulture <- newCulture
printfn
$"The current UI culture is {Thread.CurrentThread.CurrentUICulture.NativeName} [{Thread.CurrentThread.CurrentUICulture.Name}]"
printfn
$"The current culture is {Thread.CurrentThread.CurrentUICulture.NativeName} [{Thread.CurrentThread.CurrentUICulture.Name}]"
// The example displays the following output:
// The current UI culture is English (United States) [en-US]
// The current culture is English (United States) [en-US]
Imports System.Globalization
Imports System.Threading
Module Example
Public Sub Main()
' Change the current culture if the language is not French.
Dim current As CultureInfo = Thread.CurrentThread.CurrentUICulture
If current.TwoLetterISOLanguageName <> "fr" Then
Dim newCulture As CultureInfo = CultureInfo.CreateSpecificCulture("en-US")
Thread.CurrentThread.CurrentUICulture = newCulture
' Make current UI culture consistent with current culture.
Thread.CurrentThread.CurrentCulture = newCulture
End If
Console.WriteLine("The current UI culture is {0} [{1}]",
Thread.CurrentThread.CurrentUICulture.NativeName,
Thread.CurrentThread.CurrentUICulture.Name)
Console.WriteLine("The current culture is {0} [{1}]",
Thread.CurrentThread.CurrentUICulture.NativeName,
Thread.CurrentThread.CurrentUICulture.Name)
End Sub
End Module
' The example displays output like the following:
' The current UI culture is English (United States) [en-US]
' The current culture is English (United States) [en-US]
Aşağıdaki kod örneği, bir Windows Forms kullanıcı arabiriminin Denetim Masası'de ayarlanan kültürde görüntülenmesini sağlayan iş parçacığı oluşturma deyimini gösterir. Ek kod gereklidir.
#using <system.dll>
#using <System.Drawing.dll>
#using <system.windows.forms.dll>
using namespace System;
using namespace System::Threading;
using namespace System::Windows::Forms;
ref class UICulture: public Form
{
public:
UICulture()
{
// Set the user interface to display in the
// same culture as that set in Control Panel.
Thread::CurrentThread->CurrentUICulture = Thread::CurrentThread->CurrentCulture;
// Add additional code.
}
};
int main()
{
Application::Run( gcnew UICulture );
}
using System;
using System.Threading;
using System.Windows.Forms;
class UICulture : Form
{
public UICulture()
{
// Set the user interface to display in the
// same culture as that set in Control Panel.
Thread.CurrentThread.CurrentUICulture =
Thread.CurrentThread.CurrentCulture;
// Add additional code.
}
static void Main()
{
Application.Run(new UICulture());
}
}
open System.Threading
open System.Windows.Forms
type UICulture() =
inherit Form()
do
// Set the user interface to display in the
// same culture as that set in Control Panel.
Thread.CurrentThread.CurrentUICulture <- Thread.CurrentThread.CurrentCulture
// Add additional code.
new UICulture() |> Application.Run
Imports System.Threading
Imports System.Windows.Forms
Public Class UICulture : Inherits Form
Sub New()
' Set the user interface to display in the
' same culture as that set in Control Panel.
Thread.CurrentThread.CurrentUICulture = _
Thread.CurrentThread.CurrentCulture
' Add additional code.
End Sub
Shared Sub Main()
Application.Run(New UICulture())
End Sub
End Class
Açıklamalar
Ui kültürü, bir uygulamanın kullanıcı girişini ve çıkışını desteklemek için ihtiyaç duyduğu kaynakları belirtir ve varsayılan olarak işletim sistemi kültürüyle aynıdır. CultureInfo Kültür adları ve tanımlayıcıları, sabit, nötr ve belirli kültürler arasındaki farklar ve kültür bilgilerinin iş parçacıklarını ve uygulama etki alanlarını nasıl etkilediği hakkında bilgi edinmek için sınıfına bakın. bir iş parçacığının CultureInfo.CurrentUICulture varsayılan kullanıcı arabirimi kültürünün nasıl belirlendiğini öğrenmek için özelliğine bakın.
Önemli
CurrentUICulture özelliği, geçerli iş parçacığı dışında herhangi bir iş parçacığıyla kullanıldığında güvenilir bir şekilde çalışmaz. .NET Framework özelliği güvenilirdir, ancak geçerli iş parçacığı dışında bir iş parçacığı için ayarlanmaması gerekir. .NET Core'da, InvalidOperationException bir iş parçacığı özelliği farklı bir iş parçacığında CurrentUICulture okumaya veya yazmaya çalışırsa oluşturulur. Geçerli kültürü almak ve ayarlamak için özelliğini kullanmanızı CultureInfo.CurrentUICulture öneririz.
CultureInfo Bu özellik tarafından döndürülen nötr bir kültür olabilir. Nötr kültürler , DateTime.ToString(String, IFormatProvider)ve Convert.ToString(Char, IFormatProvider)gibi String.Format(IFormatProvider, String, Object[])biçimlendirme yöntemleriyle kullanılmamalıdır. CultureInfo.CreateSpecificCulture Belirli bir kültürü almak için yöntemini kullanın veya özelliğini kullanınCurrentCulture.