WPF 数据绑定[10]
来源:互联网 发布:js 判断数组是否包含 编辑:程序博客网 时间:2024/05/16 13:49
由于WPF可以绑定任意的.Net对象,所以只要该对象符合一定的机制和规则就可以被绑定并呈现出来。
而出于便利的目的,和之前的vs版本一样,在数据绑定方面WPF也提供了相应的Provider【尽管不是专门为关系型数据库提供的=-=】
第一部分、XmlDataProvider
这是一个提供用于绑定XML的对象,配合数据岛的相关方法进行使用,将会使得绑定XML变得很方便
1、页面XAML的代码如下:
A、和其他资源一样,对于一个XmlDataProvider必须要提供一个唯一键用以标识。
B、绑定的时候,使用的是XPath,但是同时也是可以使用Path,Path主要是用于绑定对象的属性的获取,也就是说,在代码中的xml资源实际上是一个XmlNode或者XmlNodeList,所以可以通过Path获得这些对象的相关属性。
C、对于一般的XPath语法在这里都适用。
2、运行结果如下:
另外,也可以使用自动以的XML文件作为资源,只要将该文件添加到项目中,并设置Source就可以了,例如:Source=“aa.xml”这样。
第二部分、ObjectDataProvider
虽然之前已经实现了对于自定义对象的数据绑定,但是在使用的时候,还是遇到一些限制,主要是来自于之前的绑定没有办法针对函数进行,也就是说:
A、在构造的时候没有办法调用非默认的构造函数
B、没有办法对于具有返回值的函数进行相关的绑定
为了解决这些问题,可以使用ObjectDataProvider,换言之,使用这个对象之后,可以在代码中选择使用初始化的构造函数(而不用在onload事件中更改属性)以及可以通过事件返回相应可绑定的东西。
1、数据源类的代码如下:
2、XAML的代码如下:
其实过程比较简单:
A、先设置一个数据源对象,然后再Provider里面将Provider对象和数据源对象绑定,这里由于使用了反射,所以要指定Type。
B、如果要使用构造函数,在使用相关子节点<ObjectDataProvider.ConstructorParameters>
C、如果要使用自定义函数,在使用子节点<ObjectDataProvider.MethodParameters>,同时要声明MethodName属性。
在数据源类中,这次绑定的构造函数以及自定义函数都是具有两个或以上的重载,所以Provider是根据参数的类型+数量来决定使用哪一个。
最后,如果要使用自定义函数返回值的话,不需要声明Path,如果是使用构造函数的话,则需要声明,因为构造函数不返回任何东西。
- WPF 数据绑定[10]
- [2014-10-11]wpf数据绑定
- WPF之数据绑定
- WPF之数据绑定
- WPF之绑定数据
- wpf数据绑定常见问题
- WPF数据绑定
- WPF 数据绑定[1]
- WPF 数据绑定[2]
- WPF 数据绑定[3]
- WPF 数据绑定[4]
- WPF 数据绑定[5]
- WPF 数据绑定[6]
- WPF 数据绑定[7]
- WPF 数据绑定[8]
- WPF 数据绑定[9]
- WPF 数据绑定[最后]
- WPF数据绑定详解
- 捕获ctrl+c信号量
- 最有利百度收录的博客排行榜
- 枚举法思路和应用
- VCC VDD, VEE, VSS是什么意思
- 打造自己的Carbide C++工程向导和模板
- WPF 数据绑定[10]
- 多个生产者-一个消费者-进程间同步的例子 - OutputDebugString的实现
- TTL和CMOS电平总结
- SWT 快捷键 设置
- .net中C#代码与javaScript函数的相互调用
- 重建索引对复制分发的影响
- 0欧的电阻在电路中的用法
- HTML中src属性值不合法带来的问题排查解决纪实
- SendMessage