【问题标题】:Add / Clear MergedDictionaries from code behind in windows 8 app从 Windows 8 应用程序中的代码添加/清除 MergedDictionaries
【发布时间】:2013-06-28 12:19:16
【问题描述】:

我正在尝试从 Windows 8 应用程序中的代码更改 MergedDictionaries。我的 App.xaml 如下所示,

<Application.Resources>
    <ResourceDictionary>
        <ResourceDictionary.MergedDictionaries>
            <ResourceDictionary Source="Common/TestTheme.xaml" />
            <ResourceDictionary Source="Common/StandardStyles.xaml" />
        </ResourceDictionary.MergedDictionaries>
    </ResourceDictionary>
</Application.Resources>

我正在尝试删除所有 ResourceDictionary,并从后面的代码中添加一个新的 ResourceDictionary。我在网上搜索但没有得到任何解决方案。需要帮助才能完成这件事。

【问题讨论】:

    标签: c# winrt-xaml app.xaml mergeddictionaries


    【解决方案1】:

    您的问题似乎没有简单的解决方案。也许您可以加载资源字典并读取所有项目,然后将对象添加到另一个字典中,如MSDN中所述

    您可以通过以下方式将项目添加到现有 ResourceDictionary 调用 Add(C# 或 Visual Basic)或 Insert (C++/CX)。你可以添加到 即时资源或应用程序资源。这些 API 调用中的任何一个 需要一个密钥,它满足一个要求中的每个项目 ResourceDictionary 有一个键。但是,您添加到 运行时的 ResourceDictionary 与 XAML 资源无关 参考。 XAML 资源引用的必要查找 在加载应用程序(或主题)时解析 XAML 时发生 检测到更改),并且在运行时修改的集合是 要么不可用,要么被重置。

    【讨论】:

      猜你喜欢
      • 2014-08-12
      • 1970-01-01
      • 2011-12-07
      • 1970-01-01
      • 1970-01-01
      • 2017-07-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多