【发布时间】:2011-01-17 09:17:35
【问题描述】:
当我的应用程序以指定的文化运行时。不要关闭应用程序,用户更改系统的文化,例如:从“。”更改数字小数分隔符。到 ”,”。我的应用程序如何捕获此事件。谢谢。
注意事项: C# 2.0,Windows 窗体。
【问题讨论】:
标签: c# .net cultureinfo
当我的应用程序以指定的文化运行时。不要关闭应用程序,用户更改系统的文化,例如:从“。”更改数字小数分隔符。到 ”,”。我的应用程序如何捕获此事件。谢谢。
注意事项: C# 2.0,Windows 窗体。
【问题讨论】:
标签: c# .net cultureinfo
你可以处理SystemEvents.UserPreferenceChanged事件:
void SystemEvents.UserPreferenceChanged(object sender, UserPreferenceChangedEventArgs e)
{
// Regional settings have changed
if (e.Category == UserPreferenceCategory.Locale)
{
...
}
}
【讨论】:
如果您想跟踪系统语言更改,那么您有 SystemEvents 对象,其中包含您可以附加到的 UserPreferenceChanged 事件。
示例:
Microsoft.Win32.SystemEvents.UserPreferenceChanged += new UserPreferenceChangedEventHandler(SystemEvents_UserPreferenceChanged);
如果你想跟踪输入语言的变化(比如在你选择语言时系统尝试的变化),那么你可以使用:System.Windows.Forms.InputLanguage.CurrentInputLanguage
示例:
string inputLanguage = System.Windows.Forms.InputLanguage.CurrentInputLanguage.LayoutName;
【讨论】: