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

Customize Acrylic Brush in UWP Applications(在UWP中自定义亚克力笔刷)

Customize Acrylic Brush in UWP Applications(在UWP中自定义亚克力笔刷)

原文 Customize Acrylic Brush in UWP Applications(在UWP中自定义亚克力笔刷)

Windows 10 Fall Creators Update(Build 16299)添加了acrylic brush,这是一个类似于Windows 7 Aero效果的UI画笔。

 

Windows中的很多内容,例如Calculator,都会使用丙烯画笔进行更新。但是,内置刷子并不总能满足我们自己的要求。特别是当Windows自动禁用丙烯酸渲染(如低功耗模式)或非活动窗口时,它会使我们的应用程序看起来非常难看。 

例如,这是正常的arcylic看起来像: 

 

这是窗口处于非活动状态时的样子: 

 

在这种情况下,我们将不得不构建一个自定义的arcylic画笔,并设置后退颜色。就像我使用“Character Map UWP”应用程序一样,这是一个很好的例子。

在正常模式下显示定制黑色丙烯酸:

 

当应用程序全屏显示或处于非活动状态时,显示系统强调颜色:

 

这是通过创建自定义的AcrylicBrush来完成的。在XAML资源中添加以下代码: 

<AcrylicBrush x:Key="CMapUwpAcrylicBrush"
              BackgroundSource="HostBackdrop" TintColor="Black" TintOpacity="0.4" FallbackColor="{StaticResource SystemAccentColor}"/>

在这个例子中,TintColor 对于你想要的普通丙烯颜色,我把它设置为黑色。TintOpacity 代表opactiy 0.4表示40%。FallbackColor 是丙烯酸无法渲染的颜色,我使用系统强调颜色。 

完整的XAML资源文件是:

<ResourceDictionary
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"> <ResourceDictionary.ThemeDictionaries> <ResourceDictionary x:Key="Default"> <AcrylicBrush x:Key="CMapUwpAcrylicBrush" BackgroundSource="HostBackdrop" TintColor="Black" TintOpacity="0.4" FallbackColor="{StaticResource SystemAccentColor}"/> </ResourceDictionary> <ResourceDictionary x:Key="HighContrast"> <SolidColorBrush x:Key="CMapUwpAcrylicBrush" Color="{ThemeResource SystemColorWindowColor}"/> </ResourceDictionary> <ResourceDictionary x:Key="Light"> <AcrylicBrush x:Key="CMapUwpAcrylicBrush" BackgroundSource="HostBackdrop" TintColor="Black" TintOpacity="0.4" FallbackColor="{StaticResource SystemAccentColor}"/> </ResourceDictionary> </ResourceDictionary.ThemeDictionaries> </ResourceDictionary>

然后您可以在任何需要的地方使用这款丙烯酸刷: 

<Grid Background="{ThemeResource CMapUwpAcrylicBrush}">
posted on 2018-11-08 16:54 NET未来之路 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/lonelyxmas/p/9930133.html

相关文章:

  • Java 基础拾遗
  • Docker Swarm 介绍 or 工作原理
  • go学习笔记-错误处理
  • python中各种数据类型
  • Going Deeper with Convolutions阅读摘要
  • layui的table的使用 三
  • js this
  • $NOIp2018$劝退记
  • 汇编语言实验一
  • 深入理解java虚拟机(六)字节码指令简介
  • 蛇形矩阵
  • oracle查看执行最慢与查询次数最多的sql语句
  • js轮播
  • 指针函数与函数指针的区别
  • IntelliJ IDEA 配置JDK
  • @angular/forms 源码解析之双向绑定
  • canvas 五子棋游戏
  • ES学习笔记(12)--Symbol
  • laravel5.5 视图共享数据
  • linux学习笔记
  • overflow: hidden IE7无效
  • Tornado学习笔记(1)
  • 全栈开发——Linux
  • 如何优雅地使用 Sublime Text
  • 入手阿里云新服务器的部署NODE
  • 使用common-codec进行md5加密
  • JavaScript 新语法详解:Class 的私有属性与私有方法 ...
  • LIGO、Virgo第三轮探测告捷,同时探测到一对黑洞合并产生的引力波事件 ...
  • Spark2.4.0源码分析之WorldCount 默认shuffling并行度为200(九) ...
  • 阿里云ACE认证学习知识点梳理
  • 如何正确理解,内页权重高于首页?
  • #我与Java虚拟机的故事#连载06:收获颇多的经典之作
  • (2)STM32单片机上位机
  • (4)logging(日志模块)
  • (C语言)strcpy与strcpy详解,与模拟实现
  • (Redis使用系列) Springboot 实现Redis 同数据源动态切换db 八
  • (Redis使用系列) Springboot 整合Redisson 实现分布式锁 七
  • (机器学习-深度学习快速入门)第一章第一节:Python环境和数据分析
  • (四)c52学习之旅-流水LED灯
  • (太强大了) - Linux 性能监控、测试、优化工具
  • (五)关系数据库标准语言SQL
  • (循环依赖问题)学习spring的第九天
  • (一)认识微服务
  • (轉)JSON.stringify 语法实例讲解
  • ./和../以及/和~之间的区别
  • .NET 中什么样的类是可使用 await 异步等待的?
  • .NET/C# 反射的的性能数据,以及高性能开发建议(反射获取 Attribute 和反射调用方法)
  • .NET/C# 推荐一个我设计的缓存类型(适合缓存反射等耗性能的操作,附用法)
  • .NET下的多线程编程—1-线程机制概述
  • .vue文件怎么使用_vue调试工具vue-devtools的安装
  • .xml 下拉列表_RecyclerView嵌套recyclerview实现二级下拉列表,包含自定义IOS对话框...
  • @Autowired多个相同类型bean装配问题
  • @Autowired和@Resource装配
  • [100天算法】-实现 strStr()(day 52)
  • [2019.2.28]BZOJ4033 [HAOI2015]树上染色