【问题标题】:WinUI 3 (UWP) Dynamic ThemingWinUI 3 (UWP) 动态主题
【发布时间】:2021-11-10 02:10:41
【问题描述】:

在 Xamarin 表单中,样式和颜色可以通过从 Application.Current.Resources.MergedDictionaries 加载和卸载资源字典来动态更改。在 WinUI 3 中可以做同样的事情吗?我查看了很多文档,但没有看到任何示例。 WinUI 3 是否使用 Application.Current.Resources.MergedDictionaries ?

【问题讨论】:

    标签: resourcedictionary winui-3 mergeddictionaries


    【解决方案1】:

    是的,您可以在 App.xaml 文件中指定 ResourceDictionaries:

    <Application.Resources>
            <ResourceDictionary>
                <ResourceDictionary.MergedDictionaries>
                    <XamlControlsResources xmlns="using:Microsoft.UI.Xaml.Controls" />
                    <!-- Other merged dictionaries here -->
                </ResourceDictionary.MergedDictionaries>            
            </ResourceDictionary>
        </Application.Resources>
    

    【讨论】:

    • 你能在代码中做如下语句吗? Application.Current.Resources.MergedDictionaries.Remove(resourceDictionary);或 Application.Current.Resources.MergedDictionaries.Add(resourceDictionary);应用启动后立即更改颜色或样式?
    • @chuckp 我认为您可以使用 Resources.MergedDictionaries.Add(...) 在代码中执行此操作
    猜你喜欢
    • 2022-01-04
    • 2023-01-27
    • 2021-08-03
    • 1970-01-01
    • 2021-12-08
    • 2022-11-05
    • 1970-01-01
    • 2019-01-31
    • 1970-01-01
    相关资源
    最近更新 更多