原文 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}">

Customize Acrylic Brush in UWP Applications(在UWP中自定义亚克力笔刷)的更多相关文章

  1. Direct2D教程IV——笔刷(Brush)对象

    目前博客园中成系列的Direct2D的教程有 1.万一的 Direct2D 系列,用的是Delphi 2009 2.zdd的 Direct2D 系列,用的是VS中的C++ 3.本文所在的 Direct ...

  2. Win10通用程序 UWP版HtmlAgilityPack UWP应用使用示例

    Win10 UWP版HtmlAgilityPack,UWP应用使用示例下载. Win10 发布了一个多星期,sdk是随着一起发布的,我安装好vs2015和sdk 开发UWP 通用程序. 在做网络解析的 ...

  3. WindowsXamlHost:在 WPF 中使用 UWP 控件库中的控件

    在 WindowsXamlHost:在 WPF 中使用 UWP 的控件(Windows Community Toolkit) 一文中,我们说到了在 WPF 中引入简单的 UWP 控件以及相关的注意事项 ...

  4. [UWP]在应用开发中安全使用文件资源

    原文:[UWP]在应用开发中安全使用文件资源 在WPF或者UWP应用开发中,有时候会不可避免的需要操作文件系统(创建文件/目录),这时候有几个坑是需要大家注意下的. 创建文件或目录时的非法字符检测 在 ...

  5. 【UWP开发】uwp应用安装失败

    原文:[UWP开发]uwp应用安装失败 编译出了uwp应用.appx之后双击打开,报错你需要为此应用包而安装的新证书,或者是带有受信任证书的新应用包.系统管理员或应用开发人员可以提供帮助.证书链在不受 ...

  6. UWP开发-在UWP中使用sqlite

    原文:UWP开发-在UWP中使用sqlite sqlite是一种轻量级的数据库,对于一些资源紧张又需要数据库的开发非常好用. SQLite 是一个开源的无服务器嵌入式数据库. 这些年来,它已作为面向存 ...

  7. (UWP开发)在ListView中通过向右滑动展开汉堡菜单

    首先在移动APP开发中,手势滑动已经成为一个必备的技能,无论大大小小的APP都需要拥有手势滑动功能.在Android和iOS操作系统的APP中,手势滑动比较普及.然而由于国内有关UWP应用的教程比较少 ...

  8. 我的面板我做主 -- 淘宝UWP中自定义Panel的实现

    在Windows10 UWP开发平台上内置的XMAL布局面板包括RelativePanel.StackPanel.Grid.VariableSizedWrapGrid 和 Canvas.在开发淘宝UW ...

  9. UWP开发随笔——UWP新控件!AutoSuggestBox!

    摘要 要开发一款优秀的application,控件肯定是必不可少的,uwp就为开发者提供了各种各样的系统控件,AutoSuggestBox就是uwp极具特色的控件之一,也是相对于之前win8.1的ua ...

随机推荐

  1. 中间件、服务器和Web服务器三者的区别

    相信很多的Web安全初学者和我一样,对中间件和服务器的认识不够深刻,对两者的概念可能会有所混淆. 正好今天在学习的时候突然想到了这个问题,粗略百度了一下,似乎网上对这个问题的解释不多,那么就由我来为大 ...

  2. P2P平台的"我要借款"功能,是否需要上传借款人的相关资料

     P2P平台的前端系统,一般都会有"我要借款"这个功能.有的平台,非常重视这个功能, 把它作为主要菜单的其中一项.有的把它看得相对次要,放在顶部Top栏中. 毕竟P2P平台,其实主 ...

  3. 量化交易中VWAP/TWAP算法的基本原理和简单源码实现(C++和python)(转)

    量化交易中VWAP/TWAP算法的基本原理和简单源码实现(C++和python) 原文地址:http://blog.csdn.net/u012234115/article/details/728300 ...

  4. 前端项目课程3 jquery1.8.3到1.11.1有了哪些新改变

    web项目课程3  jquery1.8.3到1.11.1有了哪些新改变 一.总结 一句话总结:领会官方升级的意思.  1.live();    2.die();    3.bind();    4.u ...

  5. php中的转义字符(用反斜杠\来输出,和C语言一样)

    php中的转义字符(用反斜杠\来输出,和C语言一样) 一.总结 1.引号中的变量:双引号会替换变量的值,而单引号会把它当做字符串输出. 2.引号中的转义字符:双引号将用变量的值(test)代替它的名称 ...

  6. js实现类似页面广告一段时间自动打开一段时间自动关闭的功能

    js实现类似页面广告一段时间自动打开一段时间自动关闭的功能 一.总结 Window 对象的 open()方法:window.open('测试页面.html','news','height=300,wi ...

  7. Velocity浅析及与Jsp、Freemarker对比 分类: B1_JAVA 2014-07-21 09:14 637人阅读 评论(0) 收藏

    转载自:http://www.cnblogs.com/petermsdn/archive/2011/05/06/2039178.html Velocity 是一个基于java 的模板引擎(templa ...

  8. PatentTips - Method and system for browsing things of internet of things on ip using web platform

    BACKGROUND The following disclosure relates to a method and system for enabling a user to browse phy ...

  9. PHP CodeBase: 判断用户是否手机访问

    随着移动设备的普及,网站也会迎来越来越多移动设备的访问.用适应PC的页面,很多时候对手机用户不友好,那么有些时候,我们需要判断用户是否用手机访问,如果是手机的话,就跳转到指定的手机友好页面.这里就介绍 ...

  10. mysql官网下载linux版本安装包

    原文地址:点击打开链接 今天在Linux上部署项目,用到了Mysql,因此想要下载适用于Linux的安装版本,在Mysql官网找了半天,终于找到怎样下载了,这里写出来,以后大家找的时候就好找了. 第一 ...