Windows Forms: Localizing Applications
MM .NET makes it easy for end users to add new languages and localize the applications themselves without assistance from developers. Users can add new languages and translate the entire application including text such as labels, buttons, tool tips, and system messages. This section describes how to perform these localizations.
Putting the Application in Localize Setup Mode
To put a Windows Forms application in Localize Setup mode so that it can be localized, run the application and select File | Localize Setup. This is the menu bar you created in Step 5: Windows Forms - Adding Localization Menu Bars. Selecting this menu option displays the Localization toolbar in the main application window:
Localizing Forms
To localize a form, follow these steps:- Put the application into Localize Setup mode as described in the previous section
- Launch the form to be localized.
- Click the Localize Form button on the Localization toolbar:

This displays the Localize Form dialog:

The Original Text list box displays all the unique text of the form to be localized including the form caption, label text, button text, and tooltip text. The Language combo box displays a list of all languages in the Language table. The Original text box displays the original language text of the item currently selected in the Original Text list box. The Translated text box displays the translated text for the currently selected item and language. If no translation has been performed for the currently selected language, the Translated text box contains the same value as the Original text box.
Notice all separator characters (colons, by default) are removed from labels before they are displayed in the Original Text list box. This prevents users from having to localize redundant text whose only difference is a trailing colon. For example, if a label's text is set to "Last Name:", and there is also a grid with the header text "Last Name" you only have to translate this phrase once.
- To translate text, select the text to be translated in the Original Text list box, and select the language you want to translate to in the Language combo box. If the text has not been previously translated, the Translated text box contains the same value as the Original text box. To localize the text, enter the corresponding phrase in the Translated text box.
For example, if you want to translate the English word "Address" to German:
- Select the word "Address" in the Original Text list box.
- Select German in the Language combo box
- Change the text in the Translated box to "Adresse"
- To save the translated text, either select a different item in the Original Text list box (which does a save behind the scenes), or click the Save button which saves the text and closes the dialog.
Note: You can leave the Localize Form dialog open and when you launch or select a different form, the dialog automatically displays the localizable text for the currently active form.
Localizing Menus
To localize a menu, follow these steps:- Put the application into Localize Setup mode as described previously
- In most cases there is only one menu in an application located on the main form. If this is the menu you want to localize you can click the Localize Menu button on the Localization tool bar. Otherwise, if the menu is on a secondary application form, simply launch the form and then click the Localize Menu button:

This displays the Localize Menu dialog:

The Original Text list box displays all unique text in the menu. This form works exactly the same as the Localize Form dialog (it's actually the same MM .NET Framework form). See the earlier section Localizing Forms for details on translating text using this dialog.
Note: Only instances of mmMainMenu are localized
Localizing Toolbars
To localize a toolbar, follow these steps:- Put the application into Localize Setup mode as described previously
- If you want to localize a toolbar on the main form, first make sure there are no other secondary forms open that contain toolbars, then click the Localize Toolbar button on the Localization tool bar. Otherwise, if the toolbar is on a secondary application form, simply launch the form and then click the Localize Toolbar button:

This displays the Localize Toolbar dialog:

The Original Text list box displays all unique text in the toolbar(s). This form works exactly the same as the Localize Form dialog (it's actually the same MM .NET Framework form). See the earlier section Localizing Forms for details on translating text using this dialog.
Localizing Application Messages
Most applications display text in message boxes to alert the user when something "interesting" has happened. A number of these messages are also displayed by MM .NET at run time. For example, if a user closes a Windows Form and there are pending changes, MM .NET asks the user if they want to save changes.When you run the mmLocalize.sql script (Step 1: Adding Localization Tables to a Database) it automatically adds all MM .NET messages to the Message table. You can also add your own application-specific messages to this table for display and localization. You should use the localization-aware mmMessageBox class to display application messages rather than the standard .NET MessageBox class. For details, see the MM .NET Help topic Displaying Localized Message Boxes with mmMessageBox.
To localize application messages, follow these steps:
- Put the application into Localize Setup mode as described previously
- Click the Localize Messages button on the Localization tool bar:

This displays the Localize Messages dialog:

The Message Key list box displays all MM .NET message text as well as any application-specific message text you add to the Messages table. This form works exactly the same as the Localize Form dialog (it's actually the same MM .NET Framework form). See the earlier section Localizing Forms for details on translating text using this dialog.
Changing the Current Application Language
You can easily change the current application language by selecting a different language in the Language combo box of the Localization toolbar:
When you select a new language, all open forms in the application are automatically displayed in the selected language.
© (c) 2026 Oak Leaf Enterprises, Inc., 1996-2026 • Updated: 04/26/18
Comment or report problem with topic
