当前位置: 首页 > news >正文

WINUI——Background颜色使用小结

在 ​​WinUI/UWP XAML​​ 中,Background(或其他颜色属性)支持 ​​多种颜色表示方式​​,包括以下三种主流格式:


​1. RGB 十六进制(不透明)​

  • ​格式​​:#RRGGBB
  • ​特点​​:​​无透明度​​(默认完全不透明,Alpha = FF)。
  • ​示例​​:
    <Button Background="#FF0000"/>  <!-- 纯红色 -->

​2. ARGB 十六进制(带透明度)​

  • ​格式​​:#AARRGGBB
    • AA = 透明度(Alpha,00=全透明,FF=不透明)。
    • RRGGBB = 红绿蓝分量。
  • ​示例​​:
    <StackPanel Background="#4DFFFFFF"/>  <!-- 30%透明的白色 -->

​3. 颜色枚举(预定义颜色名)​

  • ​格式​​:直接使用 Colors 类中的英文名称(如 RedBlue)。
  • ​特点​​:代码简洁,但​​不支持透明度调整​​(始终不透明)。
  • ​示例​​:
    <TextBlock Foreground="DarkBlue"/>  <!-- 深蓝色文字 -->

​4. 扩展用法:SolidColorBrush 或资源引用​

​(1) 通过 SolidColorBrush 动态设置颜色​
<Button><Button.Background><SolidColorBrush Color="#80FF0000"/>  <!-- 50%透明的红色 --></Button.Background>
</Button>
​(2) 引用静态资源或主题资源​
<Page.Resources><SolidColorBrush x:Key="MyColor" Color="#802A8AD7"/>  <!-- 50%透明的蓝色 -->
</Page.Resources><Grid Background="{StaticResource MyColor}"/>

​对比总结​

​表示方式​​示例​​透明度支持​​适用场景​
RGB 十六进制#FF0000❌ 不透明简单纯色
ARGB 十六进制#80FF0000✅ 支持需要透明度的颜色
颜色枚举名"Red"❌ 不透明快速使用预定义颜色
SolidColorBrush<SolidColorBrush>✅ 支持动态或复杂颜色设置

​注意事项​

  1. ​透明度行为差异​​:

    • 直接设置 Background="#80FF0000" 和设置 Opacity="0.5" 不同:
      • ARGB 仅背景透明,子元素不受影响。
      • Opacity 会影响整个控件(包括子元素)。
  2. ​颜色转换工具​​:

    • 可以使用在线工具(如 Color Picker)快速获取 ARGB 值。
  3. ​WinUI 3 兼容性​​:

    • 以上语法在 ​​UWP/WinUI 2.x/WinUI 3​​ 中均适用。

​完整示例​

<StackPanel><!-- 方式1: RGB 十六进制 --><Rectangle Fill="#00FF00" Width="100" Height="50"/>  <!-- 纯绿色 --><!-- 方式2: ARGB 十六进制 --><Rectangle Fill="#800000FF" Width="100" Height="50"/>  <!-- 50%透明的蓝色 --><!-- 方式3: 颜色枚举名 --><TextBlock Text="Hello" Foreground="DarkOrange"/><!-- 方式4: SolidColorBrush --><Ellipse Width="100" Height="50"><Ellipse.Fill><SolidColorBrush Color="#4DFF69B4"/>  <!-- 30%透明的热粉色 --></Ellipse.Fill></Ellipse>
</StackPanel>

根据需求选择最合适的表示方式即可!

相关文章:

  • 2 cline 提示词工程指南-记忆库
  • 基于PySide6与pycatia的CATIA智能倒角工具开发全解析
  • 4月15号
  • 欧冠002:阿斯顿维拉 vs 巴黎圣日耳曼,维拉强攻致防线大开
  • SP B\nRebuild Priorit> 如何用python去掉\n
  • 用python比较两个mp4是否实质相同
  • VLAN的知识
  • Enovia许可优化技巧
  • Dockerfile 文件常见命令及其作用
  • 微服务最佳实践:全链路可用性保障体系
  • 06- 服务网格实战:从 Istio 核心原理到微服务治理升级
  • 案例实战LangChain的核武器-chain
  • WPS JS宏编程教程(从基础到进阶)-- 第七部分:JS对象在WPS中的应用
  • 剑指Offer(数据结构与算法面试题精讲)C++版——day13
  • 泛微相关文档以及相关安装包下载
  • 软考中级-软件设计师 2022年上半年下午题真题解析:通关秘籍+避坑指南
  • 编程行业语言学习与竞争剖析:探寻冷门中的机遇
  • 在Linux的top命令输出中,各列的含义
  • 复变函数摘记3
  • Wan2.1 文生视频 Wan2.1-T2V-14B-Diffusers
  • 三江购物:因自身商业需要,第二大股东阿里泽泰拟减持不超3%公司股份
  • 解放日报:128岁的凤凰自行车“双轮驱动”逆风突围
  • 空山日落雨初收,来文徵明的画中听泉
  • 美团回应京东“二选一”指控:没有任何理由对某平台进行任何限制
  • 史蒂夫·麦奎因透露罹患前列腺癌,呼吁同胞莫受困于男性气概
  • 用了半年的洗衣机竟比马桶还脏,别再这样洗衣服了