重载默认主题中的值,修改ProgressBar的前景色

做一个小项目时,用到 ProgressBar添加一个加载效果,但是背景不是白色的,调试时发现自己选的主题色与背景色相近,特别不清晰,加载效果几乎看不见,于是就要修改ProgressBar的前景色,在修改的过程中,发现直接修改 Foreground和定义Background没有效果,没什么用,ProgressBar的前景色是你选择的主题颜色,既然知道了主题色就是ProgressBar的颜色,接下来就是重载主题色,简单来说就是在项目中重新定义一个颜色,覆盖掉主题色,其实就是定义一个与系统资源字典中相同的样式,覆盖掉系统定义即可。 其他的需要重载默认主题中样式的做法与此类似

  1. 在某个页面中重载
  2. 在整个项目中重载
    1. 在App.xaml中重载
    2. 在自定义的资源字典中重载,需要将自定义的资源字典添加到

这里只讲解最后一个,在自定义的资源字典中重载,其实都差不多,不过个人觉得,这种方式更常用。

首先创建一个资源字典文件,然后再其中添加对系统主题色的重载(这里只是重载的ProgressBar的Foreground属性,即ProgressBar的颜色)

<!-- Global Overrides -->

<ResourceDictionary.ThemeDictionaries>

<ResourceDictionary x:Key="Default">

<x:String x:Key="ProgressBarIndeterminateForegroundThemeBrush">Pink</x:String>

</ResourceDictionary>

</ResourceDictionary.ThemeDictionaries>

注:这里的颜色不能随意设置,需要设置为主题色中有的颜色之一,最初设置的White 白色,结果没有任何效果

如果在App.xaml文件中或在页面中定义的话,添加以上代码就够了,如果在自定义资源字典文件中定义的话,需要在App.xaml文件中包含自定义的资源字典文件,在App.xaml文件添加以下代码即可 (source需要设置为自定义资源字典文件的路径)

<ResourceDictionary>

<ResourceDictionary.MergedDictionaries>

<ResourceDictionary Source="/Styles/CustomStyles.xaml"></ResourceDictionary>

</ResourceDictionary.MergedDictionaries>

</ResourceDictionary>

WP修改ProgressBar的前景色的更多相关文章

  1. wp 修改 提高youtu 速度

    resolve = 后添加 |.googlevideo.com ,并修改 crlf_rules crlf_rules = /^https?:\/\/[^\/]+\.c\.youtube\.com\// ...

  2. Android 修改圆形progressBar颜色

    查了半天资料,没查到怎样修改progressBar的方法,全都是重新写个ProgressBar,其实很简单在只要一句xml里一句化就可以 android:indeterminateTint=" ...

  3. C程序之修改Windows的控制台颜色(转载)

    Windows的CMD可以和Linux下的终端一样可以有五颜六色,目前我在网上找到2种方法可以修改Windows的CMD,当然都是在代码中修改的.在“CMD”->“属性”->“颜色”,这种 ...

  4. Android ProgressBar SeekBar

    1.ProgressBar 进度条 当水平进度条完成后,隐藏该进度条,并显示一张图片 常用属性: 1. android:max 设置进度条的最大值 2. android:progress 用于指定进度 ...

  5. .NET winform 在listview中添加progressbar

    找了好长时间没找到,后来索性自己写了一个: 首先,在往listview加载数据的事件里添加progressbar: foreach (string d in arr) { ; item = new L ...

  6. Android ProgressBar 反向进度条/进度条从右到左走

    近期的项目,有个需求须要使用条状图显示比例,而且右对齐,见下图: 我想到了使用进度条,这样不就不须要在代码动态绘制条状了,省了非常多活. 那么进度条如何从右向左显示呢? 方案一: 将ProgressB ...

  7. WPF 自定义ProgressBar滚动条样式

    一.前言 滚动条一般用于加载进度,我们在看视频的时候或者在浏览网页的时候经常能看到加载进度的页面.在程序开发中,默认的进度加载样式可能跟程序风格不太一样,或者加载进度的时候需要更改一下加载的样式.这个 ...

  8. WP评论系统更换小结(转)

    第三方评论插件 多说 多说是一款追求极致体验的社会化评论框,可以用微博.QQ.人人.豆瓣等帐号登录并评论. 多说具备优质用户体验.速度和稳定性.社会化推荐.建站程序审核整合.垃圾评论过滤等特性. 自定 ...

  9. Win10 UWP 开发系列:使用SplitView实现汉堡菜单及页面内导航

    在Win10之前,WP平台的App主要有枢轴和全景两种导航模式,我个人更喜欢Pivot即枢轴模式,可以左右切换,非常方便.全景视图因为对设计要求比较高,自己总是做不出好的效果.对于一般的新闻阅读类Ap ...

随机推荐

  1. fdisk命令使用说明

    CentOS我新建了几个分区,比如/dev/sda4,sda5我想挂在一个目录下,用mount  /dev/sda5  /disk ,总提示mount:you must specify the fil ...

  2. 安卓开发笔记——自定义广告轮播Banner(实现无限循环)

    关于广告轮播,大家肯定不会陌生,它在现手机市场各大APP出现的频率极高,它的优点在于"不占屏",可以仅用小小的固定空位来展示几个甚至几十个广告条,而且动态效果很好,具有很好的用户& ...

  3. 【Java】深入理解ThreadLocal

    一.前言 要理解ThreadLocal,首先必须理解线程安全.线程可以看做是一个具有一定独立功能的处理过程,它是比进程更细度的单位.当程序以单线程运行的时候,我们不需要考虑线程安全.然而当一个进程中包 ...

  4. UVa11292

    Problem C: The Dragon of Loowater Once upon a time, in the Kingdom of Loowater, a minor nuisance tur ...

  5. Unity 3D 中实现对物体 位置(position) 旋转(rotation) 大小(scale) 的全面控制

    今天分享一些基础控制的脚本 1.位置(Position): 控制位置很简单,首先要知道要在xyz哪几个轴上移动,确定好后定义代表着那些轴的移动变量,速度(m_speed在函数外定义为全局变量)然后通过 ...

  6. Tools - Windows

    1)文本操作 Ctrl + C / Ctrl + V / Ctrl + X / Ctrl + Z / Ctrl + A:复制/粘贴/剪贴/撤销/全选. 2)窗口左右分屏 Win + 方向键:上(最大化 ...

  7. iOS-开发技巧-页面布局

    #pragma mark - Life Cycle//1.初始化//2.view did load//3.view will appear…#pragma mark - System Delegate ...

  8. Repository模式中,Update总是失败及其解析

    在Repository模式中,我的Update方法总是无法更新实体,这个非常郁闷,Update方法如下: 1: public virtual void Update(T entity) 2: { 3: ...

  9. CentOS6.5菜鸟之旅:识别NTFS分区

    一.前言 CentOS默认时不能识别NTFS分区的,需要那么需要安装fuse-ntfs-3g来处理了. 二.安装fuse-ntfs-3g     yum install fuse-ntfs-3g

  10. 反射动态创建不同的Processor

    1. 定义抽象方法 public abstract class BaseProcesser    {        public abstract void GetCustomerReportCard ...