0

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

我怎样才能做到这一点?

提前致谢。

4

3 回答 3

1

Check this out http://geekswithblogs.net/lbugnion/archive/2009/09/05/detecting-design-time-mode-in-wpf-and-silverlight.aspx, you can then set the Language accordingly with something like

FrameworkElement.LanguageProperty.OverrideMetadata(typeof(FrameworkElement), new FrameworkPropertyMetadata(XmlLanguage.GetLanguage(CultureInfo.CurrentCulture.Name)));
于 2012-04-26T09:43:35.653 回答
1

设置xml:lang属性。

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

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

于 2012-04-26T08:24:51.413 回答
1

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

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

于 2012-04-26T13:11:47.743 回答