WP7的XML操作详解:读取,过滤以及数据绑定
2012-03-04 21:48
501 查看
在这个小教程,我将演示在Windows Phone 7如何让ListBox的数据绑定XML数据。我将使用LINQ to XML,以便加载和读取数据,而且我将展示如何实现一个基本的过滤。
首先让我们先创建一个Windows Phone 7的应用程序项目示例,并添加以下两个demo xml文件。
people.xml
在这里我不得不感谢一直支持我的卤面网版主,是他让我提起兴趣写了这么一篇文章,再次感谢卤面网,一个非常不错的wp7开发论坛,后面我也将再次向大家发布几篇高质量文章,请大家到卤面上找我吧,呵呵
进入正题:
PeopleCustom.xml
下一步是创建一个示例类将被用来存储XML元素值:
为了读取XML文件的信息,我们将使用的XDocument
所以你首先需要添加System.Xml.Linq.dll引用,然后using System.Xml.Linq;
在接下来的例子中,我们将通过数据的“年龄”属性值过滤。源代码如下:
为了显示的数据,我们将使用以下ItemTemplates绑定ListBox控件:
我希望你能喜欢我的文章!如果你有更多想法,请到卤面网 wp7开发论坛(codewp7.com)问答区联系我,我会很高兴知道你在想什么。同时wp7交流QQ群172765887中,也能找到我的身影,感谢大家
源码请猛击
首先让我们先创建一个Windows Phone 7的应用程序项目示例,并添加以下两个demo xml文件。
people.xml
<?xml version="1.0" encoding="utf-8" ?> <people> <person> <firstname>Kate</firstname> <lastname>Smith</lastname> <age>27</age> </person> <person> <firstname>Tom</firstname> <lastname>Brown</lastname> <age>30</age> </person> <person> <firstname>Tim</firstname> <lastname>Stone</lastname> <age>36</age> </person> <person> <firstname>Ann</firstname> <lastname>Peterson</lastname> <age>27</age> </person> </people>
在这里我不得不感谢一直支持我的卤面网版主,是他让我提起兴趣写了这么一篇文章,再次感谢卤面网,一个非常不错的wp7开发论坛,后面我也将再次向大家发布几篇高质量文章,请大家到卤面上找我吧,呵呵
进入正题:
PeopleCustom.xml
<?xml version="1.0" ?> <People> <Person FirstName="Kate" LastName="Smith" Age="27" /> <Person FirstName="Tom" LastName="Brown" Age="30" /> <Person FirstName="Tim" LastName="Stone" Age="36" /> <Person FirstName="Ann" LastName="Peterson" Age="27" /> </People>
下一步是创建一个示例类将被用来存储XML元素值:
public class Person { string firstname; string lastname; int age; public string FirstName { get { return firstname; } set { firstname = value; } } public string LastName { get { return lastname; } set { lastname = value; } } public int Age { get { return age; } set { age = value; } } }
为了读取XML文件的信息,我们将使用的XDocument
所以你首先需要添加System.Xml.Linq.dll引用,然后using System.Xml.Linq;
XDocument loadedData = XDocument.Load("People.xml"); var data = from query in loadedData.Descendants("person") select new Person { FirstName = (string)query.Element("firstname"), LastName = (string)query.Element("lastname"), Age = (int)query.Element("age") }; listBox.ItemsSource = data;
在接下来的例子中,我们将通过数据的“年龄”属性值过滤。源代码如下:
XDocument loadedCustomData = XDocument.Load("PeopleCustom.xml"); var filteredData = from c in loadedCustomData.Descendants("Person") where c.Attribute("Age").Value == "27" select new Person() { FirstName = c.Attribute("FirstName").Value, LastName = c.Attribute("LastName").Value }; listBox1.ItemsSource = filteredData;
为了显示的数据,我们将使用以下ItemTemplates绑定ListBox控件:
<StackPanel x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0" Orientation="Horizontal"> <TextBlock Text="XML Data:"/> <ListBox x:Name="listBox"> <ListBox.ItemTemplate> <DataTemplate> <StackPanel Margin="10" > <TextBlock Text="{Binding FirstName}"/> <TextBlock Text="{Binding LastName}"/> <TextBlock Text="{Binding Age}"/> </StackPanel> </DataTemplate> </ListBox.ItemTemplate> </ListBox> <TextBlock Text="Filtered by Age 27:"/> <ListBox x:Name="listBox1"> <ListBox.ItemTemplate> <DataTemplate> <StackPanel Margin="20" > <TextBlock Text="{Binding FirstName}"/> <TextBlock Text="{Binding LastName}"/> </StackPanel> </DataTemplate> </ListBox.ItemTemplate> </ListBox> </StackPanel>
我希望你能喜欢我的文章!如果你有更多想法,请到卤面网 wp7开发论坛(codewp7.com)问答区联系我,我会很高兴知道你在想什么。同时wp7交流QQ群172765887中,也能找到我的身影,感谢大家
源码请猛击
相关文章推荐
- WP7的XML操作详解:读取,过滤以及数据绑定
- WP7 XML操作详解:读取,过滤以及数据绑定
- C# 中的XML操作详解:读取,过滤以及数据绑定
- Windows Phone 7的XML操作详解:读取,过滤以及数据绑定
- 从数据库sqlite3读取数据以及等等操作~~~~~应有尽有
- POI实战-java开发excel详解之常用操作-单元格合并与数据读取
- Hibernate缓存以及哪些操作会向缓存中读取和存放数据
- php操作XML、读取数据和写入数据的实现代码
- net9:磁盘目录文件保存到XML文档及其XML文档的读写操作,以及绑定XML到treeview
- 8天掌握EF的Code First开发系列之3 管理数据库创建,填充种子数据以及LINQ操作详解
- 读取xml节点以及日期操作问题
- WP7中关于XML文件的读取,过滤,绑定的几种方法
- PHP 数据库mysql链接,以及读取数据内容方式详解
- C# XML操作之读取XML数据
- 从XML文件中读取数据绑定到DropDownList
- 详解ASP.NET数据绑定操作中Repeater控件的用法
- 关于IOS数据操作方式详解(一)— XML数据解析
- php操作XML、读取数据和写入数据的实现代码
- dataGridView操作数据(增加 读取 绑定 获取选择的单元格 选中整行单元格时颜色变换 更新数据 锁定列的位置 添加行 列头的方法)
- JAVA操作XML一(读取):使用DOM读取XML数据的两种具体实现