Let’s look at Windows Forms localization for a minute. MSDN has a good section about Developing World Ready Applications, including how to get avoid globalization & localizability issues, how to get your code localizable, what tools are provided etc. I'm not trying to repeat what's in there - if you haven't read it yet, spend a day or two in there before you come back.
As MSDN states, there are two ways you can localize Windows Forms using the tools included in Visual Studio/.NET Framework SDK. What’s common for each is that you start by opening the form you want to localize in Visual Studio and set the Localizable property to True. After that, one method to localize the form is to simply set the language you want to localize into and start changing properties. The other way is to open the resx file for the form in winres.exe. (There’s a third way too – "pre-size” all dialogs so any language will fit, and then only allow the translators to translate text. This is a horrible idea though, don’t do this if you’re serious about delivering international software.)
What’s really important here is that, once you pick one way, you can’t easily switch to the other. The reason for this is that the resx schema used by Visual Studio for localized forms differs from the schema used in winres.
So which one do you pick? In my oh-so-personal opinion, winres is the way to go, for several reasons - ranging from how you might not want to spread your source code around, to how much harder loc kit maintenance becomes with higher file count & more complex setup, to the fact that Visual Studio costs money but winres is included in the .NET Framework SDK which anyone can download.
Whichever tool you chose though, remember that this is a case where you really want to make the right decision, and early. You don’t want to get stuck half-way trying to switch from one tool to another.
So, now you’ve picked one tool or the other. That's it, you're ready to go? Well.... your localizers can translate and resize dialog boxes, there are still a lot of things left to solve. Such as –
…and more… None of these are easily answered, but hopefully I can give some tips in upcoming posts...