WPF 資料繫結 Xml資料來源

2021-09-14 03:46:24 字數 1482 閱讀 1897

實現效果:

如何使用 xmldataprovider 繫結到 xml 資料。

查詢或篩選xml特定資料在listbox中展示

資料來源xml

資料是作為 resources 部分內的 xml 資料島 直接嵌入的。 xml 資料島必須包裝在 標記中,並始終具有乙個單一根節點,在本示例中根節點為 inventory。

xml in action

xml web technology

programming microsoft windows with c#

c# programming using the .net framework

listbox繫結xml資料及模板:

listbox 將顯示下列項。 這些項為 books 下所有元素的 title,其中 stock 值為「 out」, number 值為 3 或者大於或等於 8。

=8 or @number=3]"/>

當執行 xpath 查詢時,它將返回 xmlnode 或 xmlnode 列表。 xmlnode 是乙個clr物件,這意味著可以使用 path 屬性繫結到clr屬性。

擴充套件:xml 資料的根節點具有乙個將 xml 命名空間設定為空字串的 xmlns 特性。 將 xpath 查詢應用到 xaml 頁中內聯的資料島時,需要此屬性。 在此內聯情況下,xaml 以及資料島會繼承 system.windows 命名空間。 因此,您需要將命名空間設定為空白,以防止 xpath 查詢被 system.windows 命名空間限定而誤導查詢。

wpf 中的 xpath 屬性是由 xmlnode.selectnodes 方法處理的。 您可以修改 xpath 查詢以獲取不同的結果。

xpath="book[1]" 將返回第乙個 book 元素(「xml in action」)。 請注意 xpath 索引從 1 而不是從 0 開始。

xpath="book[@*]" 將返回帶有任意特性的所有 book 元素。

xpath="book[last()-1]" 將返回第二個至最後乙個 book 元素.

xpath="*[position()>3]" 將返回除前 3 個元素之外的所有 book 元素。

在某些應用程式中,將 xml 作為 xaml 頁的源內的資料島嵌入可能很不方便,因為在編譯時必須知道該資料的確切內容。 因此,還支援從外部 xml 檔案獲取該資料,如下面的示例所示:

xmlnamespacemanager

擴充套件:請注意,您指定的 prefix 不一定要與 xml 源中使用的字首相匹配;這樣,如果 xml 源中的字首更改,您的對映仍可以起作用。

WPF繫結資料來源之RelativeSource

一.findancestor 有時候我們不確定作為資料來源的物件叫什麼名字,但知道作為繫結源與ui布局有相對的關係,如下是一段xaml 說明多層布局控制項中放置乙個文字控制項,來顯示父級控制項的名稱。1 xaml html 2 後台 csharp relativesource rs new rela...

WPF 的 資料來源屬性 和 資料來源

一 資料來源 資料物件 屬性 path 或 path的值 path vm.property或m.property 通常具有通知功能 特例除外 二 path不能孤立而存在,它一定具有所歸屬的資料來源,一定要找到path 確切的說 是它的值 所歸屬的資料來源,說明如下 資料來源 資料物件 1 指定控制項...

WPF 繫結各種資料來源之Datatable

一 binding是wpf的核心,wpf的資料來源有以下幾種 1 ado.net中的datatable 2 xml資料來源 3 object資料來源 4 元素控制項屬性 二 wpf繫結各種資料來源索引 wpf 繫結各種資料來源之 datatable wpf 繫結各種資料來源之 object 資料來源...