In a few weeks we are starting to localize our application so I made a some tests to have a rough idea about the work we would face. I thought that WINRES.EXE could help us outsource the translations but it fail to load a simple form with an UltraToolbar. To be honest, I don't expect too much for such a simple, bare and free tool. We can, of course, use Visual Studio, but it won't let us outsource the strings translations.
Are there any recommended (either by Infragistics or by other colleges) third parties tools?
[edited] note: I don't mean Infragistics internal strings, I'm talking about button labels, tooltips, tab titles and the like.
Regards,
-Hernan.
Of course I know how to do it using plain resx files. I was looking for a more professional tool, one that can a translation workflow can be easily built upon. My application has got more than 7,000 strings to translate. This set slightly grows and shrinks as new versions are released when resource strings are added and deleted as needed. Managing those changes by hand when all you have is a version control system is a mess and costly.
For instance, say that such Form has some buttons and a WinGrid. A month later add another column to the grid and rearrange its columns order. From a localization point of view, the only resource change I'm interested in are the new Header.Title and the new Header.Tooltip. A SCM system would show lots of changes of the resource file. And it gets worst. Add a couple of panels and move the buttons and the grid to each one and Visual Studio will modify the resx upside down. No string changes were made and, besides my memory, there's no way to know this.
Besides, I will have to validate and fix every resx file that the translator sends back to me and double check that he did not changed its keys.
Right now, I'm leaning towards Infralution's Globalizer. It's not very expensive (you only pay for the developers edition, the one you give to your translators is free) has a nice workflow system which lets me monitor the translation progress either globally or per language. It also extracts the kind of resources you want to localize and it keeps them in a separate file that's easily version controled.
Infralution Globalizer also has a preview panel which lets the translator translate strings on-the-fly and see the form localized. Regretably that last feature doesn't work with many Infragistics controls and that's why I asked for advice in this forum in the first place.
-Hernán.
Hello Hernan,
Has this issue been addressed?
If I understand your question correctly, you have created an application and you are looking to localize the interface that does not come from the Infragistics controls?
In that case, it would be best to use Visual Studio's built in localization capabilities. Yes, you can outsource the translations!
Here's a high level overview of how to use Visual Studio's built in localization capabilities. If you need more information, please let me know, and I'll be happy to work on a detailed walkthrough for you.
Assuming that you already have the application in the source language:
1. Select the form and change the Localizable property to "True".
2. Change the language of the form to your target language.
3. Make a negligible change to the form's Title (ex. add a space at the end). This will create a resource file for the form (ex. Form1.es.resx) and add it to the project.
4. Open the default language resource file (ex. Form1.resx) and copy all of the translatable content into the target language resource file (ex. Form1.es.resx).
At this point you can send the Form1.es.resx file to the translator.
If you have any strings hardcoded in the code-behind, make sure you change them either to be set in the designer, or you can create another resource file and use a ResourceManager to set those in the code.
I hope this is helpful! Please let me know if you have any more questions about this, so I can write a walkthrough for your specific localization requirements.
Elizabeth Albert
Localization Engineer