值转换器可以把一种类型转换成另一种类型。例如,绑定到一个代表图片地址的字符串,希望显示的是图片,将数据存储为浮点类型,但通过

货币的形式呈现,还有奖日期存储成DateTime格式,在界面上显示时使用用Calender控件等。

如果要将值转换器与绑定关联,请创建一个实现IValueConverter接口的类。然后实现Converte和ConvertBack方法。转换器可以将数据从一种类型更改为另一种类型。

Convert和ConvertBack的区别:Convert函数表示从数据源到目标的值转换,ConvertBack函数表示从目标到数据源的值转换。因此,如果绑定模式是一次性绑定或单向绑定,只需实现Convert函数,如果是双向绑定,需要实现Convert和ConvertBack函数。

总的来说,IValueConverter接口负责数据源到数据控件绑定,自定义转换逻辑。

使用它包括以下步骤:

1.创建一个值转换器类,实现该接口。

2.给该类加入ValueConversion属性,并制定源类型和目标类型。

3.实现接口的两个方法,Convert()与ConvertBack()

转载于:https://www.cnblogs.com/xuezhi/archive/2013/03/01/2938623.html

值转换器IValueConverter相关推荐

  1. 如何从 Datagrid 中获得单元格的内容与 使用值转换器进行绑定数据的转换IValueConverter...

    一.如何从 Datagrid 中获得单元格的内容 DataGrid 属于一种 ItemsControl, 因此,它有 Items 属性并且用ItemContainer 封装它的 items. 但是,W ...

  2. 【值转换器】 WPF中Image数据绑定Icon对象

    原文:[值转换器] WPF中Image数据绑定Icon对象 这是原来的代码: <Image Source="{Binding MenuIcon}"  /> 这里的Men ...

  3. FlipView和自定义值转换器

    新建一个项目叫做TestFlip,拖动一个FlipView到MainPage.xaml上面. 和前面说到的控件ListView一样,我们可以在代码中设置FlipView控件的元素格式和内容. 完整的x ...

  4. Smark.Data 值转换器

    组件支持属性转换描述,主要用于对象属性值和数据存储之前的转换,如常见的枚举和数值,枚举和字符,用户密码等信息转换存储.实际上也可以扩展更灵活的转换如对象关联字段转换,对象序列化转等等. 在Smark. ...

  5. Silverlight/Windows8/WPF/WP7/HTML5周学习导读(9月24日-9月30日)

    Silverlight/Windows8/WPF/WP7/HTML5周学习导读(9月24日-9月30日) 本周Silverlight学习资源更新 解决"Chrome提示:Silverligh ...

  6. WPF Tile=” 变量 UI 双向绑定”x:Class=Problem/

    <TextBox Name="txtAbout" Tag="废话">最近才开始正规的学习WPF,以前只是激动,观摩,欣赏,不敢亵玩焉!我这个从游戏而 ...

  7. 基于STM32单片机水质检测PH值检测电导率TDS检测超声波水位检测

    系统功能设计 (末尾附文件) 本系统由STM32单片机核心板.超声波测距模块.PH值传感器模块.电导率传感器.LCD1602液晶及电源组成. 1.超声波传感器采集探测距离,PH传感器采集PH值(PH传 ...

  8. 第十六章:数据绑定(七)

    绑定值转换器 您现在知道如何使用StringFormat将任何绑定源对象转换为字符串.但是其他数据转换呢?也许您正在使用Slider作为绑定源,但目标是期望整数而不是双精度.或者您可能希望将Switc ...

  9. win8/Metro开发系列二 Xaml数据绑定

    首先还是那句话,我不是大牛,这些只是简单的记录一下学习的过程,没有太多面向对象和设计模式的思维,只偏基础,不喜莫笑:个人观点如果有不足之处,还望多多指教!由于学的不是太深入这里大多数是面向控件和开发介 ...

最新文章

  1. 基于XML的IOC案例
  2. java.lang.OutOfMemoryError​异常解决方法
  3. Socket网络编程--简单Web服务器(6)
  4. centos arm-linux-gcc,CentOS 5.5下arm-linux-gcc交叉编译环境的搭建
  5. 尚硅谷设计模式笔记-装饰者模式
  6. 《Python数据科学实践指南》——1.2 Python解释器
  7. C++primer 6.7节练习
  8. 专访黑石集团CEO苏世民:“我们能见他人所不能见”/巴伦独家
  9. STM32f1之光敏电阻传感器实验
  10. 电动车的蓄电池与锂电池
  11. 通过使用第三方开源jar包sigar.jar我们可以获得本地的信息
  12. 【VMware】XP安装VMware Tools
  13. 高数笔记(四):导数概念,函数的求导法则,高阶导数,隐函数求导、参数方程求导
  14. CAPL脚本中对Flexray事件的响应
  15. 论文阅读-SEFRON: A New Spiking Neuron Model With Time-Varying Synaptic Efficacy Function
  16. springboot日结工管理小程序毕业设计-附源码070940
  17. channel 的底层原理
  18. CAN301 移动计算 个人笔记
  19. vue项目运行后如何自动在浏览器中打开
  20. php l.1110,連續供墨系統

热门文章

  1. 网站被黑你隔了多久才知道?
  2. 作为SEO老人不轻易建议客户进行动态网页优化设置
  3. win10计算机拒绝访问,教你win10系统c盘拒绝访问怎么办
  4. spss数据预处理步骤_数学建模准备必备的十个数据分析软件(数学建模从入门到精通)...
  5. Java文件删除操作File#delete()
  6. android VectorDrawable使用笔记(三)
  7. https 不会被中间人攻击——因为中间人即使拿到了数据,也是加密的
  8. python 的进程池不可嵌套
  9. Vue开发跨端应用(五)cordova-ios运行问题
  10. Apache端口设置多域名和转发请求(虚拟域名)