Trying to override the culture of the system print dialog

J

JimHurst

I'm writing a C# win forms application and the customers wish to be
able to define at run/install time which language that application
runs in.
I've manage to set the applications culture, setting the
Thread.CurrentThread.CurrentUICulture and
Thread.CurrentThread.CurrentCulture to a new CultureInfo class.
This works fine for the application resources, windows, string tables,
etc, however the system dialogs, print, print preview, color palette,
etc, still appear in the system language.
I have tried everything I could think of and was wondering if it was
actually possible. It's great to set the application language, but if
the open file dialog is in a different language it will make most of
the rest of the work useless....

Thanks in advance....
-Jim.
 
P

Parker Zhang [MSFT]

Hi James,

Thanks for your post!

In your post, you said your application will run in a language which
customers can define at run/install time. I think that in most cases the
customers will select locale languages of their own which should be the
same as their machines' operation system locale setting. So probably the
system dialogs' culture setting won't be a problem for your application's
customer.

The system dialogs, print, print preview, color palette dialogs are
provided by the Windows system, their culture configurations is the same as
the Windows system's which these dialogs belonged to. Since they are
created by the operation system instead of by your application, it is
inconvenient to set their Culture. If you really want to change the culture
of the system dialogs, my idea is that you create some "Clone" system
dialogs (which look like the original system dialog, but allows you to
change their culture), and lets the customers perform settings in those
system dialogs, then apply these setting's changes to the system through
your program codes. However it seems there's more complicated work ahead.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top