代码之家  ›  专栏  ›  技术社区  ›  Thomas Bratt

如何本地化wpf应用程序,以便正确显示从右到左的语言?

  •  2
  • Thomas Bratt  · 技术社区  · 16 年前

    本地化wpf应用程序以便正确显示从右到左的语言需要哪些步骤?

    1 回复  |  直到 13 年前
        1
  •  2
  •   NVM    16 年前

    我意识到这是一个老问题,但我也被困在这个问题上,所以我要把我所做的(部分有效的)添加进去,希望有人能添加更多

    在你的AppCs你可以做这样的事情

        protected override void OnStartup(StartupEventArgs e)
        {
            base.OnStartup(e);
    
            FrameworkElement.LanguageProperty.OverrideMetadata(
              typeof(FrameworkElement),
              new FrameworkPropertyMetadata(XmlLanguage.GetLanguage(CultureInfo.CurrentCulture.IetfLanguageTag)));
    
            FrameworkElement.FlowDirectionProperty.OverrideMetadata(
            typeof(FrameworkElement),
            new FrameworkPropertyMetadata(CultureInfo.CurrentUICulture.TextInfo.IsRightToLeft
                                          ? FlowDirection.RightToLeft : FlowDirection.LeftToRight));
    
        }
    

    现在这一切都翻转好了,但它也碰巧翻转所有的图像,这不是你真正想要的。