WPF自学入门(七)WPF 初识Binding (2)

WPF自学入门(七)WPF 初识Binding

 

好了,看一下结果

WPF自学入门(七)WPF 初识Binding

 

      因为设置了值传过去的值不能是超过0~100之间,所以当超过了就显示红色边框。在Binding中,默认是会认为数据源是肯定正确的,所以如果将TextBox作为数据源,而Slider作为目标,数据源输入错误是没有显示的,那么怎么解决这个问题呢,设置VdataValidationRule.ValidatesOnTargetUpdated = true;

 

( 二)Binding的数据转换

       Binding还有另外一种机制称为数据转换,当Source端指定的Path属性值和Target端指定的目标属性不一致的时候,我们可以添加数据转换器(Convert)。上面我们提到的问题实际上就是double和stirng类型相互转换的问题,因为处理起来比较简单,所以WPF类库就自己帮我们做了,但有些数据类型转换就不是WPF能帮我们做的了,当遇到这些情况,我们只能自己动手写Converter,方法是创建一个类并让这个类实现IValueConverter接口。

WPF自学入门(七)WPF 初识Binding

 

        这个就是日期转换类,它有两个方法:

       1.当值从绑定源传播给绑定目标时,调用方法Convert

       2.当值从绑定目标传播给绑定源时,调用此方法ConvertBack,方法ConvertBack的实现必须是方法Convert的反向实现。

        这两个方法分别在里面写入怎么转换,转换成什么类型就是返回类型。

下面就是使用:

WPF自学入门(七)WPF 初识Binding

 

好了,把这个绑定的Converter属性设置成我们设计的转换类的实例就可以了。看一下程序的界面

WPF自学入门(七)WPF 初识Binding

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zygpzd.html