西西軟件園多重安全檢測下載網站、值得信賴的軟件下載站!
軟件
軟件
文章
搜索

首頁編程開發(fā)其它知識 → Windows Phone 7中的XML讀取、過濾以及數據綁定

Windows Phone 7中的XML讀取、過濾以及數據綁定

相關軟件相關文章發(fā)表評論 來源:西西整理時間:2012/3/4 22:43:43字體大。A-A+

作者:西西點擊:221次評論:6次標簽: WindowsPhone7

  • 類型:WM|WP7平臺大。1.5M語言:中文 評分:3.6
  • 標簽:
立即下載

在這個小教程,我將演示在Windows Phone 7如何讓ListBox的數據綁定XML數據。我將使用LINQ to XML,以便加載和讀取數據,而且我將展示如何實現一個基本的過濾。

首先讓我們先創(chuàng)建一個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開發(fā)論壇,后面我也將再次向大家發(fā)布幾篇高質量文章,請大家到鹵面上找我吧,呵呵

    進入正題:

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>

下一步是創(chuàng)建一個示例類將被用來存儲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>

    金山手機助手
    (130)金山手機助手
    金山手機助手是智能手機的資源獲取平臺。金山手機控幫助手機使用者用最省流量最快捷最方便最安全的方式獲取網絡資源,只需通過數據線的方式將手機連接至,便可以通過金山手機助手下載海量應用,電子書視頻音樂圖片應有盡有,游戲應用軟件一應俱全。還可以通過它進行應用管理任務管理,圖片視頻音樂等導入導出等等。功能特色金山手機控除了自有軟件游戲寶庫,還提供超過萬款手機資源,不花手機流量,一鍵下載安裝。金山手機控提供的...更多>>
    91手機助手
    (17)91手機助手
    手機助手擁有無比強大的功能,可以方便快捷的管理和安裝手機應用,清理無效文件,備份通訊錄,收發(fā)短信等。使用助手安卓版,通過電腦即可輕松管理智能手機,下載海量的手機游戲手機軟件手機音樂手機鈴聲手機壁紙手機主題手機電影等各種手機應用,大大節(jié)省手機流量。...更多>>

    相關評論

    閱讀本文后您有什么感想? 已有人給出評價!

    • 8 喜歡喜歡
    • 3 頂
    • 1 難過難過
    • 5 囧
    • 3 圍觀圍觀
    • 2 無聊無聊

    熱門評論

    最新評論

    發(fā)表評論 查看所有評論(6)

    昵稱:
    表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
    字數: 0/500 (您的評論需要經過審核才能顯示)