wpf converter converterparameter 绑定多参数
1. converterparameter不是依赖属性,所以不能用binding。
2. 可以把converter 的接口 IValueConverter改为 IMultiValueConverter,实现多个 MultiBinding
3. IMultiValueConverter代码,例如:
public class MultiBoolToColorConverter : IMultiValueConverter
{
public object Convert(object[] values, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
var color = System.Windows.Media.Color.FromRgb(0x31, 0x89, 0xC6);// "#3189c6"; if (values.All(v => (v is bool && (bool)v)) || values.All(v => (v is bool && (bool)v==false)))
{
color = System.Windows.Media.Color.FromRgb(0x89, 0xBB, 0xE0);//"#89BBE0";
} return new System.Windows.Media.SolidColorBrush(color);
} public object[] ConvertBack( object value, Type[] targetTypes, object parameter, System.Globalization.CultureInfo culture)
{
throw new NotSupportedException();
}
}
4.xmal文件写法,例如:
<UserControl.Resources>
<cv:MultiBoolToColorConverter x:Key="mutiBoolConverter"/>
</UserControl.Resources>
<Style TargetType="FrameworkElement">
<Setter Property="Visibility">
<Setter.Value>
<MultiBinding Converter="{StaticResource AccessLevelToVisibilityConverter}">
<Binding Path="Tag" RelativeSource="{RelativeSource Mode=FindAncestor,
AncestorType=UserControl}"/>
<Binding Path="Tag" RelativeSource="{RelativeSource Mode=Self}"/>
</MultiBinding>
</Setter.Value>
</Setter>
</Style>
OR
<Button Content="Test">
<Button.Background>
<MultiBinding Converter="{StaticResource mutiBoolConverter}">
<Binding Path="IsEnableCredentialsAdded"/>
<Binding Path="IsOld"/>
</MultiBinding>
</Button.Background>
</Button>
wpf converter converterparameter 绑定多参数的更多相关文章
- WPF converter(包含传递复杂参数)
单值转换器 将单一值转换为特定类型的值,以日期转换为例如下: 1.定制DateConverter类,其中当值从绑定源传播给绑定目标时,调用方法Convert. 1 public class DateC ...
- WPF converter
单值转换器 将单一值转换为特定类型的值,以日期转换为例如下: 1.定制DateConverter类,其中当值从绑定源传播给绑定目标时,调用方法Convert. 1 public class DateC ...
- WPF UserControl 的绑定事件、属性、附加属性
原文:WPF UserControl 的绑定事件.属性.附加属性 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/Vblegend_2013/arti ...
- mybatis order by绑定的参数
<select id = "queryByStartWithOrder" resultType="org.seckill.entity.SuccessKilled& ...
- WPF数据双向绑定
设置双向绑定,首先控件要绑定的对象要先继承一个接口: INotifyPropertyChanged 然后对应被绑定的属性增加代码如下: 意思就是当Age这个属性变化时,要通知监听它变化的人. 即:Pr ...
- 使用@RequestParam绑定请求参数到方法参数
@RequestParam注解用于在控制器中绑定请求参数到方法参数.用法如下:@RequestMapping public void advancedSearch( @RequestParam(& ...
- ASP.NET MVC中默认Model Binder绑定Action参数为List、Dictionary等集合的实例
在实际的ASP.NET mvc项目开发中,有时会遇到一个参数是一个List.Dictionary等集合类型的情况,默认的情况ASP.NET MVC框架是怎么为我们绑定ASP.NET MVC的Actio ...
- Asp服务器控件(HyperLink、Button) 绑定后台参数 DataBinder.Eval
HyperLink动态绑定参数 <asp:HyperLink id="MbCenterHLnk" runat="server" Text='会员中心' T ...
- 使用 POJO 对象绑定请求参数
概述 Spring MVC 会按请求参数名和 POJO 属性名进行自动匹配,自动为该对象填充属性值并且支持级联属性.这一特性在日常开发过程中使用频率比较高,开发效率也高,本文主要对 POJO 对象绑定 ...
随机推荐
- ns3重要类
1. simple-ref-count 递归模板,使得通过定义T:SimpleRefCount<T>使得T类都具有计数功能 template <typename T, typenam ...
- mysql安装及配置服务
第一次安装mysql 1.本地环境:windows 7 -64,mysql版本5.5.28(mysql-5.5.28-winx64.msi) 2.双击mysql-5.5.28-winx64.msi,进 ...
- MongoDB学习笔记~为IMongoRepository接口添加分页取集合的方法
回到目录 对于数据分页,我们已经见的太多了,几乎每个列表页面都要用到分页,这已经成了一种定理了,在进行大数据展示时,如果不去分页,而直接把数据加载到内存,这简直是不可以去相向的,呵呵,在很多ORM工具 ...
- Activemq Jolokia
打开JMX <broker … useJmx="true"> … <managementContext> <managementContext cre ...
- Python字符串str的方法使用
#!usr/bin/env python# -*-coding:utf-8-*-#字符串通常用双引号或单引号来表示:'123',"abc","字符串"#str字 ...
- Error:Flash Download Failed-"Cortex-M3"
Error:Flash Download Failed-"Cortex-M3"出现一般有两种情况: 1.SWD模式下,Debug菜单中,Reset菜单选项(Autodetect/H ...
- NopCommerce 增加 Customer Settings
预期: 仿照Customer 的 Phone number enabled 和 required 增加MemberType 相关步骤如下: 1.运行站点 Admin -> Settings -& ...
- Counting Bits -leetcode
introduction: Given a non negative integer number num. For every numbers i in the range 0 ≤ i ≤ num ...
- UVA - 10375 Choose and divide[唯一分解定理]
UVA - 10375 Choose and divide Choose and divide Time Limit: 1000MS Memory Limit: 65536K Total Subm ...
- Python版本共存之道:virtualenv和virtualenvwrapper
以前觉得根本用不着这个,但是写不同项目的时候就遇到了问题,不可能把之前的全部删掉从新安装,于是就想到了这个,终于还是要学它, 现在做一个命令的总结,方便自己和大家查询 #以下以对 test 为名的虚拟 ...