Thread.CurrentCulture Свойство

Определение

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

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

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

CultureInfo

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

Исключения

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

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

Примеры

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

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

Комментарии

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

Важно!

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

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

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

Продукт Версии
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7
.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
.NET Standard 2.0, 2.1