Thread.CurrentCulture Propriedade
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Obtém ou define a cultura do tópico 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 de Propriedade
Um objeto que representa a cultura do thread atual.
Exceções
A propriedade está definida como null.
.NET Core e .NET 5+ apenas: Não é suportado ler ou escrever a cultura de um thread a partir de outro thread.
Exemplos
O exemplo seguinte mostra a instrução threading que permite que a interface de utilizador de uma aplicação Windows Forms seja apresentada na cultura definida no Painel de Controlo. É necessário código adicional.
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
Observações
O CultureInfo objeto que é devolvido por esta propriedade, juntamente com os seus objetos associados, determina o formato padrão para datas, horas, números, valores de moeda, ordem de ordenação do texto, convenções de maiúsculas e comparações de cadeias de caracteres. Consulte a CultureInfo aula para aprender sobre nomes e identificadores de culturas, as diferenças entre culturas invariantes, neutras e específicas, e a forma como a informação cultural afeta os threads e domínios de aplicação. Consulte a CultureInfo.CurrentCulture propriedade para saber como a cultura padrão de um thread é determinada e como os utilizadores definem a informação de cultura para os seus computadores.
Importante
A CurrentCulture propriedade não funciona de forma fiável quando usada com qualquer thread que não seja a thread atual. No .NET Framework, ler a propriedade é fiável, embora defini-la para um thread diferente do atual não seja. No .NET Core, um InvalidOperationException é lançado se um thread tentar ler ou escrever a propriedade CurrentCulture num thread diferente. Recomendamos que utilize a CultureInfo.CurrentCulture propriedade para recuperar e definir a cultura atual.
A partir do .NET Framework 4, pode definir a propriedade CurrentCulture para uma cultura neutra. Isto deve-se ao facto de o comportamento da CultureInfo classe ter mudado: quando representa uma cultura neutra, os seus valores de propriedade (em particular, os Calendar, CompareInfo, DateTimeFormat, NumberFormat, e TextInfo propriedades) refletem agora a cultura específica associada à cultura neutra. Em versões anteriores do .NET Framework, a propriedade CurrentCulture criava uma exceção NotSupportedException quando uma cultura neutra era atribuída.