1. converterparameter不是依赖属性,所以不能用binding。

2. 可以把converter 的接口 IValueConverter改为 IMultiValueConverter,实现多个  MultiBinding

3. IMultiValueConverter代码,例如:

  1. public class MultiBoolToColorConverter : IMultiValueConverter
  2. {
  3. public object Convert(object[] values, Type targetType, object parameter, System.Globalization.CultureInfo culture)
  4. {
  5. var color = System.Windows.Media.Color.FromRgb(0x31, 0x89, 0xC6);// "#3189c6";
  6.  
  7. if (values.All(v => (v is bool && (bool)v)) || values.All(v => (v is bool && (bool)v==false)))
  8. {
  9. color = System.Windows.Media.Color.FromRgb(0x89, 0xBB, 0xE0);//"#89BBE0";
  10. }
  11.  
  12. return new System.Windows.Media.SolidColorBrush(color);
  13. }
  14.  
  15. public object[] ConvertBack( object value, Type[] targetTypes, object parameter, System.Globalization.CultureInfo culture)
  16. {
  17. throw new NotSupportedException();
  18. }
  19. }

4.xmal文件写法,例如:

  1. <UserControl.Resources>
  2. <cv:MultiBoolToColorConverter x:Key="mutiBoolConverter"/>
  3. </UserControl.Resources>
  1. <Style TargetType="FrameworkElement">
  2. <Setter Property="Visibility">
  3. <Setter.Value>
  4. <MultiBinding Converter="{StaticResource AccessLevelToVisibilityConverter}">
  5. <Binding Path="Tag" RelativeSource="{RelativeSource Mode=FindAncestor,
  6. AncestorType=UserControl}"/>
  7. <Binding Path="Tag" RelativeSource="{RelativeSource Mode=Self}"/>
  8. </MultiBinding>
  9. </Setter.Value>
  10. </Setter>
  11. </Style>

OR

  1. <Button Content="Test">
  2. <Button.Background>
  3. <MultiBinding Converter="{StaticResource mutiBoolConverter}">
  4. <Binding Path="IsEnableCredentialsAdded"/>
  5. <Binding Path="IsOld"/>
  6. </MultiBinding>
  7. </Button.Background>
  8. </Button>

wpf converter converterparameter 绑定多参数的更多相关文章

  1. WPF converter(包含传递复杂参数)

    单值转换器 将单一值转换为特定类型的值,以日期转换为例如下: 1.定制DateConverter类,其中当值从绑定源传播给绑定目标时,调用方法Convert. 1 public class DateC ...

  2. WPF converter

    单值转换器 将单一值转换为特定类型的值,以日期转换为例如下: 1.定制DateConverter类,其中当值从绑定源传播给绑定目标时,调用方法Convert. 1 public class DateC ...

  3. WPF UserControl 的绑定事件、属性、附加属性

    原文:WPF UserControl 的绑定事件.属性.附加属性 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/Vblegend_2013/arti ...

  4. mybatis order by绑定的参数

    <select id = "queryByStartWithOrder" resultType="org.seckill.entity.SuccessKilled& ...

  5. WPF数据双向绑定

    设置双向绑定,首先控件要绑定的对象要先继承一个接口: INotifyPropertyChanged 然后对应被绑定的属性增加代码如下: 意思就是当Age这个属性变化时,要通知监听它变化的人. 即:Pr ...

  6. 使用@RequestParam绑定请求参数到方法参数

    @RequestParam注解用于在控制器中绑定请求参数到方法参数.用法如下:@RequestMapping public void advancedSearch(   @RequestParam(& ...

  7. ASP.NET MVC中默认Model Binder绑定Action参数为List、Dictionary等集合的实例

    在实际的ASP.NET mvc项目开发中,有时会遇到一个参数是一个List.Dictionary等集合类型的情况,默认的情况ASP.NET MVC框架是怎么为我们绑定ASP.NET MVC的Actio ...

  8. Asp服务器控件(HyperLink、Button) 绑定后台参数 DataBinder.Eval

    HyperLink动态绑定参数 <asp:HyperLink id="MbCenterHLnk" runat="server" Text='会员中心' T ...

  9. 使用 POJO 对象绑定请求参数

    概述 Spring MVC 会按请求参数名和 POJO 属性名进行自动匹配,自动为该对象填充属性值并且支持级联属性.这一特性在日常开发过程中使用频率比较高,开发效率也高,本文主要对 POJO 对象绑定 ...

随机推荐

  1. 代替Reflection(反射)的一些方法

    Reflection(反射)是深入学习.Net必须掌握的技能之一.最初学Reflection的时候,的确是被惊住了,原来还可以这样.只要给你一个Assembly, 你就能获取到其中所有的类型,根据类型 ...

  2. Redhat Linux安装JDK 1.7

    本篇主要介绍在Redhat Linux(Red Hat Enterprise Linux Server release 5.7 (Tikanga))系统上安装JDK 1.7,其它Linux平台安装也大 ...

  3. Crontab定时任务配置

    CRONTAB概念/介绍 crontab命令用于设置周期性被执行的指令.该命令从标准输入设备读取指令,并将其存放于“crontab”文件中,以供之后读取和执行. cron 系统调度进程. 可以使用它在 ...

  4. VS 中關於附加到進程中調試 的問題。

    在使用Vs 2012 時,項目發佈到Local IIS 中,如果在調試某個頁面中時,都要F5--> Login --> Debug 很繁瑣,下列有一種較快捷的方式,能夠更快的調試代碼. 1 ...

  5. phpRedis安装、配置及简单使用

    安装phpRedis前,请先安装Redis,再安装phpRedis插件. 1.下载安装 在linux服务器上,命令行执行以下命令(cd ./usr local/src 一般源码放在这里(推荐源码安装) ...

  6. stm32 u8 u16 u32

    u8 是 unsigned char u16 是 unsigned short u32 是 unsigned int

  7. 3D坦克大战游戏iOS源码

    3D坦克大战游戏源码,该游戏是基于xcode 4.3,ios sdk 5.1开发.在xcode4.3.3上完美无报错.兼容ios4.3-ios6.0 ,一款ios平台上难得的3D坦克大战游戏源码,有2 ...

  8. monkeyrunner之电脑安装驱动(五)

    在Monkeyrunner做自动化测试时,可以使用模拟器,当然也可以选择用真机.不过,要想通过电脑来安装软件,操作手机,则必须先安装手机驱动,而且一般手机连接电脑之后,电脑会自动开始下载驱动.不过也经 ...

  9. .net下灰度模式图像在创建Graphics时出现:无法从带有索引像素格式的图像创建graphics对象 问题的解决方案。

    在.net下,如果你加载了一副8位的灰度图像,然后想向其中绘制一些线条.或者填充一些矩形.椭圆等,都需要通过Grahpics.FromImage创建Grahphics对象,而此时会出现:无法从带有索引 ...

  10. 【2016-10-31】【坚持学习】【Day16】【MongoDB】【入门】

    下载,安装: http://www.mongodb.org/downloads 命令行下运行 MongoDB 服务器 为了从命令提示符下运行MongoDB服务器,你必须从MongoDB目录的bin目录 ...