Поделиться через


Thread.CurrentCulture Свойство

Определение

Возвращает или задает язык и региональные параметры для текущего потока.

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

Значение свойства

Объект, представляющий язык и региональные параметры для текущего потока.

Исключения

Для свойства задано значение null.

Только .NET Core и .NET 5+ — чтение или запись языка и региональных параметров потока из другого потока не поддерживается.

Примеры

В следующем примере показана инструкция потока, которая позволяет пользовательскому интерфейсу приложения Windows Forms отображаться в языке и региональных параметрах, заданных на панели управления. Требуется дополнительный код.

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

Комментарии

Объект CultureInfo , возвращаемый этим свойством вместе со связанными объектами, определяет формат по умолчанию для дат, времени, чисел, значений валют, порядка сортировки текста, соглашений о регистре и сравнения строк. CultureInfo Ознакомьтесь с классом, чтобы узнать о именах и идентификаторах языка и региональных параметров, различиях между инвариантными, нейтральными и конкретными языками и региональными параметрами, а также о том, как информация о языках и региональных параметрах влияет на потоки и домены приложений. CultureInfo.CurrentCulture Ознакомьтесь со свойством, чтобы узнать, как определяется язык и региональные параметры потока по умолчанию, и как пользователи задают сведения о языках и региональных параметрах для своих компьютеров.

Это важно

Свойство CurrentCulture не работает надежно при использовании с любым потоком, кроме текущего потока. В .NET Framework чтение свойства является надежным, хотя установка его для потока, отличного от текущего потока, не является. В .NET Core создается исключение, InvalidOperationException если поток пытается считывать или записывать CurrentCulture свойство в другом потоке. Мы рекомендуем использовать CultureInfo.CurrentCulture свойство для получения и задания текущего языка и региональных параметров.

Начиная с .NET Framework 4, свойство можно задать CurrentCulture для нейтрального языка и региональных параметров. Это связано с тем, что поведение CultureInfo класса изменилось: когда он представляет нейтральный язык и региональные параметры, его значения свойств (в частности, Calendar, , NumberFormatCompareInfoDateTimeFormatи TextInfo свойства) теперь отражают конкретный язык и региональные параметры, связанные с нейтральным языком и региональными параметрами. В более ранних версиях .NET Framework CurrentCulture свойство вызвало NotSupportedException исключение при назначении нейтрального языка и региональных параметров.

Применяется к