-
深入浅出 WPF教程之WPF中使用XmlDataProvider做控件绑
- 2016-01-18 11:40 来源:未知
排列三走势: WPF中使用XmlDataProvider做控件绑定
本篇将说说如何使用XmlDataProvider作控件绑定,但它使用Source 属性。对于大多数应用程序,我们希望绑定到XML或 .NET 对象。比如XML文件或者自定义的.Net对象,或者是我们从数据库中取出的相应记录。
XAML 用其 Provider 对象支持该操作。XAML 中内置有两种类型的数据提供程序:ObjectDataProvider 和 XMLDataProvider。其中,ObjectDataProvider 用于绑定到 .NET 对象以及从 .NET 对象绑定;XMLDataProvider 用于绑定到 XML 片段和文档以及从 XML 片段和文档进行绑定。
XMAL文件内部数据的直接绑定:

xmlns="//schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="//schemas.microsoft.com/winfx/2006/xaml"
x:Class="WPFDataBinding.Window1"
x:Name="Window"
Title="Window1"
>
<Canvas x:Name="LayoutRoot">
<StackPanel Width="214" Height="Auto">
<StackPanel.Resources>
<XmlDataProvider x:Key="FavoriteColors">
<x:XData>
<Colors xmlns="">
<Color>红</Color>
<Color>橙</Color>
<Color>黄</Color>
<Color>绿</Color>
<Color>蓝</Color>
<Color>靛</Color>
<Color>紫</Color>
</Colors>
</x:XData>
</XmlDataProvider>
</StackPanel.Resources>
<TextBlock HorizontalAlignment="Center" FontWeight="Bold">
喜欢的颜色
</TextBlock>
<ListBox Width="200" Height="120"
ItemsSource="{Binding Source={StaticResource FavoriteColors}, XPath=/Colors/Color}">
</ListBox>
</StackPanel>
</Canvas>
</Window>
最后的结果:
