WPF 设计时应用程序区域性

本文关键字:应用程序 区域性 WPF | 更新日期: 2023-09-27 18:32:22

我们正在开发一个本地化的英语/阿拉伯语应用程序,我需要在设计时将两种区域性之一的System.Threading.Thread.CurrentThread.CurrentUiCulture设置为与运行时设置的值不同的值。

我怎样才能做到这一点?

提前谢谢。

WPF 设计时应用程序区域性

设置 xml:lang 属性。

此属性描述特定元素及其子元素的区域性。此属性的值更改 WPF 中多个功能的行为。例如,它更改了连字、拼写检查、数字替换、复杂脚本整形和字体回退的行为。有关在 XAML 中设置 xml:lang 处理的详细信息,请参阅 WPF 的全球化。

http://msdn.microsoft.com/en-us/library/ms788718.aspx

http://geekswithblogs.net/lbugnion/archive/2009/09/05/detecting-design-time-mode-in-wpf-and-silverlight.aspx 查看一下,然后您可以使用类似以下内容相应地设置语言

FrameworkElement.LanguageProperty.OverrideMetadata(typeof(FrameworkElement), new FrameworkPropertyMetadata(XmlLanguage.GetLanguage(CultureInfo.CurrentCulture.Name)));

WPF Localization Extension允许您设置设计时语言(并且它还具有其他功能,例如允许您在运行时通过 WPF 更改语言,而无需代码隐藏等)。

在这里查看: http://wpflocalizeextension.codeplex.com/

设计器使用 Windows 会话的当前区域性。更改 Windows 设置中的区域性。