用一个ProcessBar显示电量,低于20%时候,ForeGround为红色,否则为绿色,

页面使用了MVVM绑定到了ViewModel, ProcessBar XAML为

<ProgressBar  Maximum="" Value="{Binding RemainPercent}"
Foreground="{Binding RemainPercent, Converter={StaticResource ForgroundConverter}}" ></ProgressBar>

其中  ForgroundConverter为资源的key

xmlns:converter ="clr-namespace:XXX.XXX"

<UserControl.Resources>
<converter:PercentForgroundConverter x:Key="ForgroundConverter"/>
</UserControl.Resources>
PercentForgroundConverter 为实现了IValueConverter的类,方法如下,
Brushes的命名空间为System.Windows.Media。
public class PercentForgroundConverter:IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
double percent = (double)value;
if (percent<=)
{
return Brushes.Red;
}
return Brushes.Green;
} public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
throw new NotImplementedException();
}
}

1.  当门限值(文中为20)固定情况下,可以这样写,若门限值不固定,可以将门限值以参数的形式传进来;

2. 只有当绑定的值(RemainPercent)发生变化以后,才会执行Convert 方法。

最新文章

  1. Javascript中bind、call、apply函数用法
  2. 解决oracle 中文入库是乱码的问题
  3. SQL Server Management Studio 2012 设置脚本默认保存路径
  4. JAZZ
  5. 数字信号处理实验(六)&mdash;&mdash;FIR滤波器的设计
  6. Sharepoint2010突然之间不能打开页面,报503错误The service is unavailable
  7. ASP.NET- Repeater 嵌套
  8. 蓝桥杯 六角形中填置1~12个数字 dfs
  9. c++重载ostream的实现
  10. windows下安装redis以及redis扩展,设置redis为windows自启服务
  11. PHP面向对象笔记解析
  12. 在vue脚手架中使用npm的方式使用swiper
  13. 12.C# 接口和抽象类的区别
  14. 使用原生Java代码生成可执行Jar包
  15. ES6之字符串扩展
  16. delete和delete[] 区别
  17. iOS获取当前路由信息
  18. 20135316王剑桥Linux内核学习笔记第三周
  19. WPF之数据触发器 改变控件背景色或闪烁
  20. Postman—做各种类型的http接口测试

热门文章

  1. 一些浏览器的USER-AGENT
  2. Bootstrap页面布局7 - Bootstrap响应式布局的实用类
  3. 11.PHP内核探索:嵌入式PHP PHP内核探索:嵌入式PHP
  4. P1091 合唱队形
  5. java正则表达式取括号里面的内容
  6. $_SERVER存储
  7. java jmx
  8. Android源码剖析之Framwork层消息传递(Wms到View)
  9. php--tp中页面之间的跳转
  10. windows下安装nodejs尝尝鲜