在windows 8应用程序中添加/清除代码隐藏中的MergedDictionaries

本文关键字:代码 隐藏 MergedDictionaries 清除 添加 windows 应用程序 | 更新日期: 2023-09-27 18:20:19

我正试图在windows8应用程序中从代码隐藏更改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。我在网上搜索了一下,但没有找到任何解决方案。需要帮助才能完成这件事。

在windows 8应用程序中添加/清除代码隐藏中的MergedDictionaries

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

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