电竞比分网-中国电竞赛事及体育赛事平台

分享

Windows Presentation Foundation(WPF)中的數(shù)據(jù)綁定(使用XmlDataProvider作控件綁定)

 louisasea 2007-11-21
 Windows Presentation Foundation(WPF)中的數(shù)據(jù)綁定(使用XmlDataProvider作控件綁定)     CSDN blog推出文章指數(shù)概念,文章指數(shù)是對(duì)blog文章綜合評(píng)分后推算出的,綜合評(píng)分項(xiàng)分別是該文章的點(diǎn)擊量,回復(fù)次數(shù),被網(wǎng)摘收錄數(shù)量,文章長度和文章類型;滿分100,每月更新一次。

--------------------------------------------------------------------------------
引用或轉(zhuǎn)載時(shí)請保留以下信息:
大可山 [MSN:a3news(AT)hotmail.com]
http://www. http://www.
蘿卜鼠在線圖形圖像處理
--------------------------------------------------------------------------------

上篇:Windows Presentation Foundation(WPF)中的數(shù)據(jù)綁定(控件與控件值的綁定) 一文中講了使用{Binding ElementName=xxx,Path=xxx}的形式實(shí)現(xiàn)了控件到控件的綁定,注意它使用了ElementName屬性。本篇將說說如何使用XmlDataProvider作控件綁定,但它使用Source 屬性。

對(duì)于大多數(shù)應(yīng)用程序,我們希望綁定到XML或 .NET 對(duì)象。比如XML文件或者自定義的.Net對(duì)象,或者是我們從數(shù)據(jù)庫中取出的相應(yīng)記錄。

XAML 用其 Provider 對(duì)象支持該操作。XAML 中內(nèi)置有兩種類型的數(shù)據(jù)提供程序:ObjectDataProvider 和 XMLDataProvider。其中,ObjectDataProvider 用于綁定到 .NET 對(duì)象以及從 .NET 對(duì)象綁定;XMLDataProvider 用于綁定到 XML 片段和文檔以及從 XML 片段和文檔進(jìn)行綁定。

2. XMAL文件內(nèi)部數(shù)據(jù)的直接綁定:
首先我們來看看直接在XAML中如何使用XMLDataProvider進(jìn)行內(nèi)部數(shù)據(jù)的直接綁定。
<Window
 xmlns=" >
<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>藍(lán)</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>

可以看到,在 StackPanel 的資源(<StackPanel.Resources> )中,有一個(gè) XMLDataProvider 對(duì)象。x:Key 表示 Binding 對(duì)象中用來引用它的名稱。這里,我們創(chuàng)建了 XML 內(nèi)聯(lián)數(shù)據(jù)(數(shù)據(jù)使用<x:XData>標(biāo) 簽包含起來,關(guān)于XData的細(xì)節(jié),建議你查查MSDN:ms-help: //MS.LHSMSSDK.1033/MS.LHSNETFX30SDK.1033/wpf_conceptual/html/7ce209c2-621b -4977-b643-565f7e663534.htm,有更詳細(xì)的說明),用作數(shù)據(jù)綁定的源。在 ListBox 的 Binding 中,使用FavoriteColors的StaticResource 作為Source。如果某個(gè)數(shù)據(jù)源位于 XAML 文檔中,我們就要指定該對(duì)象是一個(gè)靜態(tài)源(StaticResource),正如這里所看到的一樣。最后,我們使用 XPath 語句指定應(yīng)該使用 XML 文檔中的哪個(gè)集合來填充 ListBox。

最后的結(jié)果:
XAML內(nèi)聯(lián)數(shù)據(jù)綁定到控件

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請遵守用戶 評(píng)論公約

    類似文章 更多