Win UI3开发笔记(四)设置主题续

上文讲到过关于界面和标题栏以及普通文本的主题设置,这篇说一下关于对话框的主题设置。

我最终没找到办法,寻求办法的朋友可以不用接着看了,以下只是过程。

一个对话框包括标题部分、内容部分和按钮部分,其中,在ContentDialog标签中设置的背景颜色是按钮部分的背景颜色,现有一个简单的对话框如下图。
在这里插入图片描述
xaml代码:

<ContentDialog x:Name="dialog1"  Title="Connection" CloseButtonText="OK" Background="AliceBlue"><ContentDialog.Content><TextBlock VerticalAlignment="Center">对话框内容</TextBlock></ContentDialog.Content>
</ContentDialog>

如果按照前文的方法设置黑暗模式下的背景为黑色,这个对话框在黑暗模式下的效果如下图:
在这里插入图片描述
可以看到标题和内容部分的文字变为了白色,但是背景没有变为黑色。
以Winui gallery中的示例,黑暗模式下对话框应该是这样的:
在这里插入图片描述
示例中的代码跑不起来。
而我发现,如果设置本机主题为深色,原来不会变黑的部分会生效。
在这里插入图片描述

github上也有类似疑问:

1、https://github.com/microsoft/WinUI-Gallery/issues/126

这个说的应该是一个软件中设置了Dark的主题结果对话框没有任何改变,其中一个说:Gallery中的对话框在打开之前不会查询应用程序的当前主题,ContentDialog的烟雾层不尊重控件的ElementTheme。这里猜测烟雾层就是按钮上边的那两部分
另一个:我们将等待ContentDialog控件更新,而不是在控件库中进行部分修复。暂时结束此问题。
这个并没有什么有用的信息。

2、https://github.com/microsoft/microsoft-ui-xaml/issues/8640

问题描述是:背景与主题(亮/暗)匹配,但当我切换应用程序主题时,烟雾没有反应。和我们的问题很像,但是没有解决方案。

3、https://github.com/microsoft/microsoft-ui-xaml/issues/6281

问题:如果应用程序触发暗主题,则内容对话框无法正确显示内容对话框。同样没有给出解决方案。

4、https://github.com/microsoft/microsoft-ui-xaml/issues/6577

问题:ContentDialog不遵循应用程序的当前主题,而是遵循系统的主题。没有解决方案。
看了一个设置popup的,但是不是用的C#,而且使用C#调用得到的全是空。
看了好多,最后没找到办法,直接设置Light算了。
有找到办法的朋友求指路!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/495865.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

解决idea Translation翻译无法使用问题

下面是一个github的开源项目 google可用ip扫描​ 将zip下载到本地 这个软件本质是扫描可用的google翻译ip 自动把延迟最短的ip添加到host里面 使用方法 1、下载解压包 2、使用管理员权限运行GoogleTranslateIpCheck.exe程序&#xff08;否则运行的时候会出错&#xff09; …

Rust使用calamine读取excel文件,Rust使用rust_xlsxwriter写入excel文件

Rust使用calamine读取已存在的test.xlsx文件全部数据&#xff0c;还读取指定单元格数据&#xff1b;Rust使用rust_xlsxwriter创建新的output.xlsx文件&#xff0c;并写入数据到指定单元格&#xff0c;然后再保存工作簿。 Cargo.toml main.rs /*rust读取excel文件*/ use cala…

PIGX从零开始快速构建分布式服务

PIGX从零开始快速构建分布式服务 一、环境搭建1.代码下载2 更改maven目录2更改完成后等待jar包的下载3 认真阅读README.md4 更改服务名5 编译代码 二、基础服务auth、upms、gateway配置与启动1 搭建数据库2 初始化pig数据库信息3构建nacos服务端3.1 更改pig-register配置并启动…

C++ 补充之常用遍历算法

C遍历算法和原理 C标准库提供了丰富的遍历算法&#xff0c;涵盖了各种不同的功能。以下是一些常见的C遍历算法以及它们的概念和原理的简要讲解&#xff1a; for_each&#xff1a;对容器中的每个元素应用指定的函数。 概念&#xff1a;对于给定的容器和一个可调用对象&#xff…

pdf转word文档怎么转?分享4种转换方法

pdf转word文档怎么转&#xff1f;在日常工作中&#xff0c;我们经常遇到需要将PDF文件转换为Word文档的情况。无论是为了编辑、修改还是为了重新排版&#xff0c;将PDF转为Word都显得尤为重要。那么&#xff0c;PDF转Word文档怎么转呢&#xff1f;今天&#xff0c;就为大家分享…

StarRocks实战——携程酒店实时数仓

目录 一、实时数仓 二、实时数仓架构介绍 2.1 Lambda架构 2.2 Kappa架构 三、携程酒店实时数仓架构 3.1 架构选型 3.2 实时计算引擎选型 3.3 OLAP选型 四、携程酒店实时订单 4.1 数据源 4.2 ETL数据处理 4.3 应用效果 4.4 总结 原文大佬的这篇实时数仓建设案例有借…

LVS负载均衡服务器

简介: LVS (Linux Virtual Server):四层路由设备&#xff0c;是由中国人章文松研发的(阿里巴巴的副总裁)根据用户请求的IP与端口号实现将用户的请求分发至不同的主机。 工作原理: LVS工作在一台server上提供Directory(负载均衡器)的功能&#xff0c;本身并不提供服务&#xff…

素皮材质的手机壳,如何才能做到经久耐用?

近几年&#xff0c;素皮材质开始在手机背壳上开始应用&#xff0c;各家手机厂商&#xff0c;基本都给自己的旗舰系列设备推出了带素皮材质版本的手机款式&#xff0c;比如华为的Mate 60系列&#xff0c;不仅Pro版本有素皮材质&#xff0c;Pro版本更是黑白两款全是素皮材质。 那…

EfficientSAM | 借助MIM机制,MetaAI让SAM更高效!

本文首发&#xff1a;AIWalker 本文介绍了一种名为EfficientSAM的模型&#xff0c;该模型通过利用遮罩图像预训练来提高图像分割的性能。作者使用了一个名为SAMI的方法&#xff0c;通过将SAM图像编码器的特征作为重建目标&#xff0c;从SAM图像编码器中重建特征&#xff0c;从而…

Flask学习笔记

不论POST请求还是GET请求都支持在 URL 中添加变量&#xff0c;可以选择性的加上一个转换器&#xff0c;为变量指定数据类型。 history_alarm.route(/test/<int:post_id>, methods[POST]) def test(post_id):print(f"参数类型为&#xff1a;{type(post_id)}")i…

使用Node.js开发一个文件上传功能

在现代 Web 应用程序开发中&#xff0c;文件上传是一个非常常见且重要的功能。今天我们将通过 Node.js 来开发一个简单而强大的文件上传功能。使用 Node.js 来处理文件上传可以带来许多好处&#xff0c;包括简单的代码实现、高效的性能和灵活的配置选项。 首先&#xff0c;我们…

SpringMVC 学习(九)之拦截器

目录 1 拦截器介绍 2 创建一个拦截器类 3 配置拦截器 1 拦截器介绍 在 SpringMVC 中&#xff0c;拦截器 (Interceptor) 是一种用于拦截 HTTP 请求并在请求处理之前或之后执行自定义逻辑的组件。拦截器可以用于实现以下功能&#xff1a; 权限验证&#xff1a;在请求处理之前…