I've been preparing my app for internationalization, where controls read their localized text from the form resource files. The toolbar adds tools in initializeComponent like this:
Infragistics.Win.UltraWinToolbars.ButtonTool buttonTool22 = new Infragistics.Win.UltraWinToolbars.ButtonTool("FileExit");
appearance34.Image = ((object)(resources.GetObject("appearance34.Image")));buttonTool122.SharedProps.AppearancesSmall.Appearance = appearance34;buttonTool122.SharedProps.Caption = resources.GetString("resource.Caption43");buttonTool122.SharedProps.Category = resources.GetString("resource.Category42");buttonTool122.SharedProps.ToolTipText = resources.GetString("resource.ToolTipText30");
The problem is that when tools are rearranged/added/removed within the toolbar, the resource file and InitializeComponent seem to get out of sync and the wrong captions and tooltips are applied to each tool.
Is there some way around this, or some standard method of internationalization I am missing.?
Thanks,
Erik
I don't believe any changes to localizations were made with the dock manager or tooltip manager, so these procedures will not change anything when used with dock manager. If you are having localization issues with the dock manager or tooltips, you should submit the issue to the support group: http://ko.infragistics.com/gethelp.
We finally upgraded to 2008 Vol 2 and I went through your procedure to update my forms.
Does the same procedure apply to the Dock Manager too?
Also what about the Tooltip Manager? There is no way to import/export tooltips, so is there any fix for localizing tooltips?
Thanks!
I am on 2006 vol 3 right now. So I guess as soon as I upgrade I can go through your procedure. Hopefully my company will give me time to upgrade pretty soon...
This bug has been reported and fixed in version 7.2 and later. However, if the fix were applied to existing tools, all localizations would be lost (instead of them just being out of sync). Obviously this is much worse, so specific code was added so that the fix would only be applied to new tools added to a toolbars manager. The bug will still affect tools which have already been defined on your toolbars manager. There are 2 options to fix this: 1) Redefine all your tools and localizations for each language from scratch (I don't think you want to do this though as it could be very time consuming). 2). Redefine all your tools and localizations using the toolbars manager's built-in save/load layout functionality. The 2nd approach is a little trickier because the save/load layout logic wasn't originally designed for this, but it will save you a lot of time. Here it is:
1. Save a layout file for each localized language, including the default language:
a. Set the Form’s language to the language which needs to be saved.
b. Save the layout (see ‘Saving a layout’ below). Choose a filename that indicates the Form’s language, such as layout-french.DAT
2. Set the Form’s language to (Default).
3. Load the attached layout file named layout-empty.DAT (see ‘Loading a layout’ below).
4. Perform a Save All in Visual Studio (Ctrl+Shift+S).
5. Close the Form designer.
6. Perform these steps for each language which had a layout saved for it in step 1:
a. Open the Form designer
b. Load the layout for the Form’s current language which was saved in step 1.
c. Perform a Save All. (If all saved layout files have been loaded, the process is complete).
d. Change the Form’s language to the next language that needs to be loaded.
e. Load the layout-empty.DAT layout file.
f. Perform a Save All.
g. Close the form designer. Note: this step is very important. Without performing this step, localizations from all loaded layouts before this will be lost.
Saving a layout:
1. Right click on the toolbars manager and select Load/Save Configuration.
2. Choose to save a layout in binary format.
3. Browse to the file that will be saved by clicking the browse button next to the filename box.
4. Click ‘Save’ to save the layout.
Loading a layout:
2. Choose to load a layout in binary format.
3. Browse to the file that will be loaded by clicking the browse button next to the filename box.
4. Click ‘Load’ to load the layout.