You need to change language, not default language. The default language means system default, but you are talking about start of your application.
Look at the article you referenced and pay attention for these lines:
Thread.CurrentThread.CurrentCulture = ci;
Thread.CurrentThread.CurrentUICulture = ci;
That should reload resource assemblies with the satellites closest to the required culture.
Maybe you want to switch
input language (related to keyboard layout)? This is something different. Please see:
http://msdn.microsoft.com/en-us/library/system.windows.input.inputlanguagemanager.aspx[
^].
(If you want to change the system default input language look at the SystemParametersInfo
function with the SPI_SETDEFAULTINPUTLANG
flag:
http://msdn.microsoft.com/en-us/library/ms724947%28VS.85%29.aspx[^].
This is not a part of .NET CFL. You need to use P/Invoke to do it:
http://en.wikipedia.org/wiki/Platform_Invocation_Services[^],
http://msdn.microsoft.com/library/en-us/vcmxspec/html/vcmg_PlatformInvocationServices.asp[^].
I doubt you really need it.)—SA