Component properties do not appear in the Translation Manager

By: Vincent Drake

Abstract: Explains why many component properties do not automatically appear in the translation manager and how to fix it.

Problem:

Certain component properties, such as DBGrid column titles, do not appear in the Translation Manager, causing them to be stuck in the native language the application was developed in.

Solution:

Try changing the default value of the property. For example, change the DBGrid.Columns.Column1.Title.Caption in the IDE to something other than the default. Then click Project, Languages, Update Resource DLLs. The properties should then appear in the Translation Manager.

Explanation:

The different languages in your project are governed by resource DLLs. When you generate a resource DLL, the wizard examines the project forms' DFM files, looking for strings and values you may want to change between languages. If you examine an example form's DFM file, you'll find that the DFM contains no data for the column title. This is the reason the TM does not contain these properties.

But then, how can the column titles appear at design time and run-time? The titles are defaulting to the corresponding field name on the table it's representing. The IDE saves space in the DFM by omitting properties that can fall back on their default values, but that doesn't help the Translation Manager do it's job.

When we explicitly assign a value to these properties, we force the IDE to write these prperty values to the DFM which, in turn, makes the Translation Manager aware of them.


Server Response from: ETNASC04