Thread.CurrentUICulture Özellik

Tanım

Ç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.

C#
public System.Globalization.CultureInfo CurrentUICulture { get; set; }

Özellik Değeri

Geçerli kültürü temsil eden bir nesne.

Özel durumlar

özelliği olarak nullayarlanı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.

C#
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]

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.

C#
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());
    }
}

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.

Şunlara uygulanır

Ürün Sürümler
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1