当前位置: 首页 > 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>

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


http://www.mrgr.cn/news/98466.html

相关文章:

  • 【Pandas】pandas DataFrame iterrows
  • NLP高频面试题(四十三)——什么是人类偏好对齐中的「对齐税」(Alignment Tax)?如何缓解?
  • chain_type=“stuff 是什么 ? 其他方式有什么?
  • STM32F407实现内部FLASH的读写功能
  • 天元证券|8家汽车零部件上市公司一季度业绩预喜
  • MySQL索引和事务
  • 学习笔记十二——Rust 高阶函数彻底入门(超详细过程解析 + 每步数值追踪)
  • 【Linux】基础 IO(文件描述符、重定向、缓冲区)
  • LVGL Animation Image(Animimg)控件详解
  • 怎样完成本地模型知识库检索问答RAG
  • Oracle REGEXP_SUBSTR
  • 2025.4.15六年之约day11
  • 华为OD机试真题——阿里巴巴找黄金宝箱 IV(2025A卷:200分)Java/python/JavaScript/C++/C语言/GO六种最佳实现
  • Transformer 介绍
  • ubuntu24.04终端优化(Zsh + Oh My Zsh)
  • 算法思想之前缀和(二)
  • 嵌入式硬件篇---单片机周期
  • YOLO11改进——融合BAM注意力机制增强图像分类与目标检测能力
  • 在Ubuntu18.04上安装小皮面板并搭建drupal网站
  • Hollowed Net for On-Device Personalization of Text-to-Image Diffusion Models - Slides