Procedura: impostare la lingua e la lingua dell'interfaccia utente per la globalizzazione di Windows Form
I due valori relativi alla lingua di un'applicazione in Visual Basic o Visual C# determinano le risorse che vengono caricate per un'applicazione e il modo in cui informazioni quali valuta, numeri e date vengono formattate. Le risorse caricate sono determinate dall'impostazione della lingua dell'interfaccia utente, mentre le opzioni di formattazione vengono stabilite dall'impostazione della lingua. I valori relativi alla lingua dipendono dalle proprietà CurrentCulture e CurrentUICulture. È possibile impostare questi valori nel codice come illustrato nella procedura seguente.
Il valore predefinito della proprietà CurrentCulture corrisponde alle impostazioni internazionali del sistema, che vengono impostate nelle Impostazioni internazionali nel pannello di controllo. Il valore predefinito della proprietà CurrentUICulture corrisponde alla lingua dell'interfaccia utente del sistema operativo. In Windows 2000 e Windows XP MultiLanguage Edition, le impostazioni di CurrentUICulture sono quelle predefinite della lingua dell'interfaccia utente per l'utente corrente.
In alcune circostanze potrebbe essere necessario apportare modifiche all'applicazione, coerentemente alle impostazioni del sistema operativo o alle impostazioni della lingua dell'utente, ma mantenere invariati ad esempio numeri o date. È possibile utilizzare classi specifiche della lingua per formattare le informazioni con la lingua inglese non associata a un paese particolare. Per ulteriori informazioni relative a queste classi, vedere Formattazione per lingue differenti e System.Globalization. Per ulteriori informazioni sulla lingua inglese, vedere InvariantCulture. Per informazioni relative alle impostazioni disponibili per la lingua, vedere CultureInfo.
Per impostare le opzioni di formattazione adatte a una lingua specifica
Per sovrascrivere le impostazioni dell'utente o del sistema operativo, impostare le proprietà CurrentCulture e CurrentUICulture.
In genere, è opportuno specificare una lingua in modo che ogni parte dell'interfaccia utente dell'applicazione la rifletta. Per tale motivo è necessario procedere all'impostazione della lingua prima che il metodo InitializeComponent venga chiamato.
' Visual Basic ' Put the Imports statements at the beginning of the code module Imports System.Threading Imports System.Globalization ' Put the following code before InitializeComponent() ' Sets the culture to French (France) Thread.CurrentThread.CurrentCulture = new CultureInfo("fr-FR") ' Sets the UI culture to French (France) Thread.CurrentThread.CurrentUICulture = new CultureInfo("fr-FR") // C# // Put the using statements at the beginning of the code module using System.Threading; using System.Globalization; // Put the following code before InitializeComponent() // Sets the culture to French (France) Thread.CurrentThread.CurrentCulture = new CultureInfo("fr-FR"); // Sets the UI culture to French (France) Thread.CurrentThread.CurrentUICulture = new CultureInfo("fr-FR");
Nota
Il valore della lingua deve essere sempre specifico, ad esempio "fr-FR" e relativo a una lingua non associata ad alcun paese, ad esempio "fr". Infatti una lingua non associata ad alcun paese, ad esempio "fr", può valere per tutti i paesi francofoni, ma nei paesi dove tali lingue vengono parlate, ad esempio Francia, Belgio, Quebec, si utilizzano valute diverse.
Chiamare i metodi di formattazione con la lingua universale per ogni stringa che deve apparire invariata, indipendentemente dal valore della proprietà CurrentCulture.
' Visual Basic Dim MyInt As Integer = 100 Dim MyString As String = MyInt.ToString("C", CultureInfo.InvariantCulture) MessageBox.Show(MyString) // C# int MyInt = 100; string MyString = MyInt.ToString("C", CultureInfo.InvariantCulture); MessageBox.Show(MyString);
Vedere anche
Riferimenti
CurrentCulture
CurrentUICulture
CultureInfo
Altre risorse
Globalizzazione di applicazioni
Globalizzazione e localizzazione di applicazioni
Globalizzazione di Windows Form