Windows Forms Localizzate

Localizzare delle windows form probabilmente sarà una prassi nota ai più. In ogni caso mi segno sul blog la serie di semplici step che permettono di creare una applicazione Windows Forms localizzata.

Quando si aggiunge una Wondows Form all'applicazione si deve impostare la proprietà Localizable a True.

Localizable

Le caption che vengono impostate sulla Form verranno quindi salvate all'interno del file di risorse di default, con nome NomeForm.resx quindi nel nostro esempio Pippo.resx.

pipporesx

Attenzione: questo file di risorse è quello che l'applicazione userà se non troverà il file di lingua specifico; al suo interno vanno quindi inserite le caption nella lingua considerata di default per la nostra applicazione.

Per tradurre quindi l'applicazione si può procedere in più modi: innanzittutto si deve considerare che per ogni lingua o coppia lingua cultura che intendiamo gestire verrà creato il file di risorse specifico con nome NomeForm.lingua-cultura.resx. Se per esempio traduciamo il form Pippo in inglese il file generato sarà Pippo.en.resx, mentre se lo traduciamo in inglese specificando la cultura statunitense il file risulterà essere Pippo.en-US.resx.

pippoen

Questi file li possiamo creare a mano, modificare con un qualsiasi tool, ed aggiungere al nostro progetto. L'ambiente ci viene però incontro dandoci la possibilità di lavorare direttamente sul designer; selezionando nella finestra delle proprietà la combinazione lingua e cultura desiderata (proprietà Langauge del form) l'ambiente si occupa di creare il file specifico e possiamo quindi cambiare le proprietà dei nostri controlli (per esempio Text  per le caption) direttamente dal desinger; in più ci è consentito di localizzare anche proprietà come la lunghezza, per permettere di modificare leggermente l'aspetto grafico dell'applicazione, adattandolo ad eventuali caption più lunghe.

Languages

In esecuzione il file di risorse corretto viene caricato in base alla proprietà CurrentUICulture del Thread corrente. Se il file specifico lingua-cultura non viene trovato si prova col file generale di lingua e se non si trova nemmeno quello si usa il file di default.

Vediamo con un paio di esempi il risultato:

Esecuzione con CurrentUICulture impostata a "en-US": il file usato sarà Pippo.en-US.resx.

enUS

Esecuzione con CurrentUICulture impostata a "en-GB": il file usato sarà Pippo.en.resx, perchè non viene trovato il file Pippo.en-GB.resx.

enGB

Esecuzione con CurrentUICulture impostata a "fr": il file usato sarà Pippo.resx, perchè non viene trovato il file Pippo.fr.resx.

fr

Per la messaggistica del form io mi sono implementato un sistema a parte per non legare un messaggio direttamente ad una form; in questo modo ho un file di risorse unico che contiene tutti i messaggi per l'utente condividendoli tra tutti i form dell'applicazione. Il meccanismo è lo stesso: tralasciando il come implementare l'accesso a queste risorse, è sufficiente usare le stesse regole di naming anche per questo file. In questo modo l'applicazione carica "gratis" il file corretto in base alla solita proprietà CurrentUICulture.

messges

Per concludere lo stesso meccanismo può essere applicato alle immagini del sistema: se per esempio un requisito fosse quello di mostare icone diversi in base alla lingua è sufficiente inserire le Icone all'interno di un file di risorse ed applicare ancora una volta le stesse regole di naming.

 

Matteo

 

Print | posted @ sabato 29 novembre 2008 00:43

Comments on this entry:

Gravatar # re: Windows Forms Localizzate
by Donwilliam at 26/11/2016 19:58

Microoft windows have some features for the development of the persona benefits.This rush my essay writing service is essential for the improvement of the personal career, build up.The localizing the files in the windows is an important issue for executing all the tasks.
Gravatar # how to get free xbox live codes
by how to get free xbox live codes at 06/06/2018 10:07

Thanks for sharing
how to get free xbox live codes
Gravatar # re: Windows Forms Localizzate
by harryjames at 26/08/2018 19:06

Thanks for sharing the brilliant ideas.
Gravatar # re: Windows Forms Localizzate
by happy wheels at 28/08/2018 08:38

enjoy it..... good
Comments have been closed on this topic.