WPF支持以下几种绑定:
(1)控件到控件的绑定
(2)XML数据的绑定(含内联XML数据和外部XML文件数据)
(3).Net对象的数据绑定
(4)DataSet,DataTable等数据绑定
下面几篇中陆续说明这几种数据绑定的情况,希望对学习WPF的你有所裨益。
1. 控件到控件的绑定
说明:
(1)上面将txtBoxInput输入的文字(Text属性)绑定到了下面的txtBlockOutput的Text属性上。当TextBox中的文字改变时,下面TextBlock显示的文字也跟着改变,实现了数据绑定。
(2)绑定的方法是在TextBlock的Text属性中,使用
我们发现,txtBlockOutput的Text属性用“{}”括了起来,里面有Binding ElementName=xxx,Path=xxx之类的语句。注意属性值与属性值之间使用逗号(,)隔开了。这是XAML的语法。
WPF中使用XmlDataProvider做控件绑定
本篇将说说如何使用XmlDataProvider作控件绑定,但它使用Source 属性。
对于大多数应用程序,我们希望绑定到XML或 .NET 对象。比如XML文件或者自定义的.Net对象,或者是我们从数据库中取出的相应记录。
XAML 用其 Provider 对象支持该操作。XAML 中内置有两种类型的数据提供程序:ObjectDataProvider 和 XMLDataProvider。其中,ObjectDataProvider 用于绑定到 .NET 对象以及从 .NET 对象绑定;XMLDataProvider 用于绑定到 XML 片段和文档以及从 XML 片段和文档进行绑定。
XMAL文件内部数据的直接绑定:
可以看到,在 StackPanel 的资源(<StackPanel.Resources> )中,有一个 XMLDataProvider 对象。x:Key 表示 Binding 对象中用来引用它的名称。这里,我们创建了 XML 内联数据(数据使用<x:XData>标签包含起来,关于XData的细节,建议你查查MSDN:ms-help: //MS.LHSMSSDK.1033/MS.LHSNETFX30SDK.1033/wpf_conceptual/html/7ce209c2-621b -4977-b643-565f7e663534.htm,有更详细的说明),用作数据绑定的源。在 ListBox 的 Binding 中,使用FavoriteColors的StaticResource作为Source。如果某个数据源位于 XAML 文档中,我们就要指定该对象是一个静态源(StaticResource),正如这里所看到的一样。最后,我们使用 XPath 语句指定应该使用 XML 文档中的哪个集合来填充 ListBox。