Udostępnij za pośrednictwem


Thread.CurrentCulture Właściwość

Definicja

Pobiera lub ustawia kulturę 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

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

Wyjątki

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

Tylko platformy .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 pokazano instrukcję wątkową, która umożliwia interfejsowi użytkownika aplikacji Windows Forms wyświetlanie w kulturze ustawionej w Panelu sterowania. Wymagany jest dodatkowy kod.

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

Uwagi

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

Ważna

Właściwość CurrentCulture nie działa niezawodnie w przypadku użycia z żadnym wątkiem innym niż bieżący wątek. W programie .NET Framework odczytywanie właściwości jest niezawodne, chociaż ustawienie go dla wątku innego niż bieżący wątek nie jest. W programie .NET Core element jest zgłaszany, InvalidOperationException jeśli wątek próbuje odczytać lub zapisać CurrentCulture właściwość w innym wątku. Zalecamy użycie CultureInfo.CurrentCulture właściwości w celu pobrania i ustawienia bieżącej kultury.

Począwszy od programu .NET Framework 4, można ustawić CurrentCulture właściwość na kulturę neutralną. Dzieje się tak, ponieważ zachowanie CultureInfo klasy uległo zmianie: gdy reprezentuje kulturę neutralną, jej wartości właściwości (w szczególności Calendarwłaściwości , , CompareInfoDateTimeFormat, NumberFormatiTextInfo) odzwierciedlają teraz określoną kulturę skojarzona z kulturą neutralną. We wcześniejszych wersjach programu .NET Framework CurrentCulture właściwość zwróciła wyjątek, gdy przypisano neutralną kulturę NotSupportedException .

Dotyczy