Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Aggiornamento: novembre 2007
In questa procedura dettagliata viene illustrato come localizzare elementi WPF in un'applicazione ibrida basata su Windows Form.
Di seguito vengono elencate le attività illustrate nella procedura dettagliata:
Creazione del progetto host Windows Form.
Aggiunta di contenuto localizzabile.
Attivazione della localizzazione
Assegnazione di identificatori di risorsa
Utilizzo dello strumento LocBaml per produrre un assembly satellite.
Per un elenco di codice completo delle attività illustrate in questa procedura dettagliata, vedere Esempio di localizzazione di un'applicazione ibrida.
Al termine, sarà disponibile un'applicazione ibrida localizzata.
Nota È possibile che le finestre di dialogo e i comandi di menu visualizzati siano diversi da quelli descritti nella Guida, a seconda delle impostazioni attive o dell'edizione del programma. Per modificare le impostazioni, scegliere Importa/esporta impostazioni dal menu Strumenti. Per ulteriori informazioni, vedere Impostazioni di Visual Studio.
Prerequisiti
Per completare questa procedura dettagliata, è necessario disporre dei seguenti componenti:
- Visual Studio 2008.
Creazione del progetto host Windows Form
Il primo passaggio consiste nella creazione del progetto dell'applicazione Windows Form e nell'aggiunta di un elemento WPF con contenuto da localizzare.
Per creare il progetto host
Creare un progetto di applicazione WPF denominato LocalizingWpfInWf. Per ulteriori informazioni, vedere Procedura: creare un progetto applicazione Windows.
Aggiungere un elemento UserControlWPF denominato SimpleControl al progetto.
Utilizzare il controllo ElementHost per posizionare un elemento SimpleControl del form. Per ulteriori informazioni, vedere Procedura dettagliata: hosting di controlli compositi di Windows Presentation Foundation in Windows Form.
Aggiunta di contenuto localizzabile
Verrà in seguito aggiunto un controllo etichetta Windows Form e impostato il contenuto dell'elemento WPF su una stringa localizzabile.
Per aggiungere contenuto localizzabile
In Esplora soluzioni fare doppio clic su SimpleControl.xaml per aprirlo in WPF Designer.
Impostare il contenuto del controllo Button utilizzando il codice riportato di seguito.
In Esplora soluzioni fare doppio clic su Form1 per aprirlo in Progettazione Windows Form.
Aprire la Casella degli strumenti e fare doppio clic su Etichetta per aggiungere un controllo etichetta al form. Impostare il valore della proprietà Text su "Hello".
Premere F5 per compilare ed eseguire l'applicazione.
Sia sull'elemento SimpleControl sia sul controllo etichetta verrà visualizzato il testo "Hello".
Attivazione della localizzazione
La finestra Progettazione Windows Form fornisce le impostazioni per attivare la localizzazione in un assembly satellite.
Per attivare la localizzazione
In Esplora soluzioni fare doppio clic su Form1.cs per aprirlo in Progettazione Windows Form.
Nella finestra Proprietà impostare il valore della proprietà Localizable del form su true.
Nella finestra Proprietà impostare il valore della proprietà Language su Spagnolo (Spagna).
In Progettazione Windows Form selezionare il controllo etichetta.
Nella finestra Proprietà impostare il valore della proprietà Text su "Hola".
Un nuovo file di risorse denominato Form1.es-ES.resx verrà aggiunto al progetto.
In Esplora soluzioni fare clic con il pulsante destro del mouse su Form1.cs, quindi scegliere Visualizza codice per aprirlo nell'editor di codice.
Copiare il seguente codice nel costruttore Form1, prima di chiamare InitializeComponent.
In Esplora soluzioni fare clic con il pulsante destro del mouse su LocalizingWpfInWf, quindi scegliere Scarica progetto.
Al progetto viene assegnata l'etichetta (non disponibile).
Fare clic con il pulsante destro del mouse su LocalizingWpfInWf, quindi scegliere Modifica LocalizingWpfInWf.csproj.
Il file di progetto verrà aperto nell'editor di codice.
Copiare il la riga riportata di seguito nel primo elemento PropertyGroup nel file di progetto.
<UICulture>en-US</UICulture>Salvare e chiudere il file di progetto.
In Esplora soluzioni fare clic con il pulsante destro del mouse su LocalizingWpfInWf, quindi scegliere Ricarica progetto.
Assegnazione di identificatori di risorsa
È possibile eseguire il mapping del contenuto localizzabile alle assembly di risorse utilizzando identificatori di risorsa. L'applicazione MsBuild.exe assegna automaticamente identificatori di risorsa quando si specifica l'opzione updateuid.
Per assegnare identificatori di risorsa
Dal menu Start aprire il prompt dei comandi Visual Studio.
Per assegnare identificatori di risorsa al contenuto localizzabile, utilizzare il comando seguente.
msbuild /t:updateuid LocalizingWpfInWf.csprojIn Esplora soluzioni fare doppio clic su SimpleControl.xaml per aprirlo nell'editor del codice. Sarà visualizzato il comando msbuild che ha aggiunto l'attributo Uid a tutti gli elementi. In tal modo si semplifica la localizzazione mediante l'assegnazione di identificatori di risorsa.
Premere F6 per generare la soluzione.
Utilizzo dello strumento LocBaml per produrre un assembly satellite.
Il contenuto localizzato viene memorizzato in un assembly satellite di sole risorse Utilizzare lo strumento della riga di comando LocBaml.exe per produrre un assembly localizzato per il contenutoWPF.
Per produrre un assembly satellite
Copiare lo strumento LocBaml.exe nella cartelle obj\Debug del progetto. Per ulteriori informazioni, vedere Procedura: localizzare un'applicazione.
Nella finestra del prompt dei comandi utilizzare il comando seguente per estrarre stringhe di risorsa in un file temporaneo.
LocBaml /parse LocalizingWpfInWf.g.en-US.resources /out:temp.csvAprire il file temp.csv con Visual Studio o con un altro editor di testo. Sostituire la stringa "Hello" con la relativa traduzione spagnola, "Hola".
Salvare il file temp.csv.
Per generare il file di risorse localizzato, utilizzare il comando seguente.
LocBaml /generate /trans:temp.csv LocalizingWpfInWf.g.en-US.resources /out:. /cul:es-ESIl file di risorse LocalizingWpfInWf.g.es-ES. viene creato nella cartella obj\Debug.
Per generare l'assembly satellite localizzato, utilizzare il seguente comando.
Al.exe /out:LocalizingWpfInWf.resources.dll /culture:es-ES /embed:LocalizingWpfInWf.Form1.es-ES.resources /embed:LocalizingWpfInWf.g.es-ES.resourcesIl file LocalizingWpfInWf.resources.dll viene creato nella cartella obj\Debug.
Copiare il file LocalizingWpfInWf.resources.dll nella cartella bin\Debug\es-ES del progetto.. Sostituire il file esistente.
Eseguire LocalizingWpfInWf.exe, situato nella cartella bin\Debug folder del progetto. Non rigenerare l'applicazione oppure l'assembly satellite verrà sovrascritto.
Nell'applicazione vengono visualizzate le stringhe localizzate invece delle stringhe in inglese.
Vedere anche
Attività
Procedura dettagliata: localizzazione di Windows Form
Concetti
Procedura: localizzare un'applicazione