Udostępnij za pośrednictwem


Thread.CurrentCulture Właściwość

Definicja

Pobiera lub ustawia kulturę dla bieżącego wątku.

public:
 property System::Globalization::CultureInfo ^ CurrentCulture { System::Globalization::CultureInfo ^ get(); void set(System::Globalization::CultureInfo ^ value); };
public System.Globalization.CultureInfo CurrentCulture { get; set; }
member this.CurrentCulture : System.Globalization.CultureInfo with get, set
Public Property CurrentCulture As CultureInfo

Wartość właściwości

CultureInfo

Obiekt reprezentujący kulturę bieżącego wątku.

Wyjątki

Właściwość jest ustawiona na null wartość .

Tylko .NET Core i .NET 5+: odczytywanie lub zapisywanie kultury wątku z innego wątku nie jest obsługiwane.

Przykłady

W poniższym przykładzie przedstawiono wątkową instrukcje, która umożliwia interfejsowi użytkownika aplikacji Windows Forms wyświetlanie w kulturze ustawionej w Panel sterowania. Wymagany jest dodatkowy kod.

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

Uwagi

Obiekt zwracany przez tę właściwość wraz ze skojarzonymi obiektami określa domyślny format dat, godzin, liczb, wartości waluty, kolejności sortowania tekstu, konwencji wielkości liter i porównań CultureInfo ciągów. Zapoznaj się z klasą, aby poznać nazwy i identyfikatory kultur, różnice między niezmiennymi, neutralnymi i określonymi kulturami oraz sposób, w jaki informacje o kulturze wpływają na wątki i CultureInfo domeny aplikacji. Zobacz właściwość , aby dowiedzieć się, jak jest określana domyślna kultura wątku i jak użytkownicy CultureInfo.CurrentCulture ustawiają informacje o kulturze dla swoich komputerów.

Ważne

Właściwość CurrentCulture nie działa niezawodnie, gdy jest używana z dowolnym wątkiem innym niż bieżący wątek. W .NET Framework odczytywanie właściwości jest niezawodne, chociaż ustawienie jej dla wątku innego niż bieżący wątek nie jest. Na platformie .NET Core jest zgłaszany, jeśli wątek próbuje odczytać lub zapisać właściwość InvalidOperationException CurrentCulture w innym wątku. Zalecamy użycie właściwości do pobrania CultureInfo.CurrentCulture i ustawienia bieżącej kultury.

Począwszy od .NET Framework 4, można ustawić właściwość CurrentCulture na kulturę neutralną. Dzieje się tak, ponieważ zachowanie klasy uległo zmianie: Gdy reprezentuje kulturę neutralną, jej wartości właściwości (w szczególności właściwości , , , , i) odzwierciedlają teraz określoną kulturę skojarzoną z kulturą CultureInfo Calendar CompareInfo DateTimeFormat NumberFormat TextInfo neutralną. We wcześniejszych wersjach .NET Framework właściwość wytkowała wyjątek podczas CurrentCulture NotSupportedException przypisywania kultury neutralnej.

Dotyczy