首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Visual Studio Designer中具有资源的多语言wpf应用程序

Visual Studio Designer中具有资源的多语言wpf应用程序
EN

Stack Overflow用户
提问于 2015-07-23 10:02:05
回答 1查看 2.6K关注 0票数 1

这就是我的问题:我有多语言的WPF应用程序,它的资源位于两个不同的文件中。现在,我在app.xaml.cs中选择合适的一个,如下所示:

代码语言:javascript
运行
复制
var dict = new ResourceDictionary();
switch (Thread.CurrentThread.CurrentCulture.ToString())
{
    case "de-DE":
        dict.Source = new Uri("pack://application:,,,/Resources;component/StringResources.de-DE.xaml", UriKind.Absolute);
        break;
    default:
        dict.Source = new Uri("pack://application:,,,/Resources;component/StringResources.xaml", UriKind.Absolute);
        break;
}
Resources.MergedDictionaries.Add(dict);

而且一切都很好,但我在VisualStudio设计器中看不到这些资源。

另一方面,当我像这样在ResourceDictionary文件中定义App.xaml时:

代码语言:javascript
运行
复制
<Application x:Class="Ampe.UI.Views.App"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Exit="App_OnExit" ShutdownMode="OnMainWindowClose">
    <Application.Resources>
        <ResourceDictionary>
            <ResourceDictionary.MergedDictionaries>
                <ResourceDictionary Source="pack://application:,,,/Resources;component/StringResources.de-DE.xaml"/>
            </ResourceDictionary.MergedDictionaries>
        </ResourceDictionary>
    </Application.Resources>
</Application>

那么我在designer中有这个资源,但是我不能设置多语言。

在具有多语言应用程序的设计器中,是否存在可视资源的可能性?可能是在打开应用程序时更改了app.xaml文件吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-07-23 10:39:37

你走的路是对的。

  1. 我建议您在添加新字典之前清除应用程序合并的字典。 (Thread.CurrentThread.CurrentCulture.ToString()) { case "de-DE":dict.Source =新Uri("pack://application:,,,/Resources;component/StringResources.de-DE.xaml",UriKind.Absolute“);默认值: dict.Source =新Uri("pack://application:,,/Resources;component/StringResources.xaml",UriKind.Absolute);break;} Resources.MergedDictionaries.Add(dict);
  2. 你的app.xaml应该像你说的那样:
  3. 当从资源中获得本地化值时,必须使用DynamicResources而不是StaticResources:

对我来说很管用。希望能帮上忙。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31584120

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档