Compartilhar via


Thread.CurrentCulture Propriedade

Definição

Obtém ou define a cultura do thread atual.

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

Valor da propriedade

Um objeto que representa a cultura do thread atual.

Exceções

A propriedade é definida como null.

Somente .NET Core e .NET 5+: não há suporte para ler ou escrever a cultura de um thread de outro thread.

Exemplos

O exemplo a seguir mostra a instrução threading que permite que a interface do usuário de um aplicativo do Windows Forms seja exibida na cultura definida no Painel de Controle. Código adicional é necessário.

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

Comentários

O CultureInfo objeto retornado por essa propriedade, juntamente com seus objetos associados, determina o formato padrão para datas, horas, números, valores de moeda, a ordem de classificação de texto, convenções de casing e comparações de cadeia de caracteres. Consulte a CultureInfo classe para saber mais sobre nomes e identificadores de cultura, as diferenças entre culturas invariáveis, neutras e específicas e a maneira como as informações de cultura afetam threads e domínios de aplicativo. Consulte a CultureInfo.CurrentCulture propriedade para saber como a cultura padrão de um thread é determinada e como os usuários definem informações de cultura para seus computadores.

Importante

A CurrentCulture propriedade não funciona de forma confiável quando usada com qualquer thread diferente do thread atual. No .NET Framework, a leitura da propriedade é confiável, embora defini-la para um thread diferente do thread atual não seja. No .NET Core, um InvalidOperationException será gerado se um thread tentar ler ou gravar a CurrentCulture propriedade em um thread diferente. Recomendamos que você use a CultureInfo.CurrentCulture propriedade para recuperar e definir a cultura atual.

A partir do .NET Framework 4, você pode definir a CurrentCulture propriedade como uma cultura neutra. Isso ocorre porque o comportamento da CultureInfo classe mudou: quando ela representa uma cultura neutra, seus valores de propriedade (em particular, o Calendar, CompareInfo, , DateTimeFormatNumberFormate TextInfo propriedades) agora refletem a cultura específica associada à cultura neutra. Em versões anteriores do .NET Framework, a CurrentCulture propriedade gerou uma NotSupportedException exceção quando uma cultura neutra foi atribuída.

Aplica-se a