[C#.NET][Infopath 2010] 如何在 VSTA 使用 XPathNodeIterator
在上篇[Infopath 2010] 如何在 VSTA 使用 XPathNavigator 介紹了使用單一節點的方法,本篇將介紹重覆節點的用法
它可以在表單上讓使用者動態插入列,想插多少就插多少
這些操作該如何用程式產生呢?別急,讓我們先學好怎麼用 XPathNodeIterator 吧
Step1.引用重覆節點
//引用 MainData 節點
XPathNavigator root = MainDataSource.CreateNavigator();
//引用 target 節點
XPathNodeIterator retable = root.Select("/my:myFields/my:target", this.NamespaceManager);
用法其實跟單一節點一樣,只是引用的類別不一樣
單一節點:XPathNavigator retable = root.SelectSingleNode("/my:myFields/my:target", this.NamespaceManager);
重覆節點:XPathNodeIterator retable = root.Select("/my:myFields/my:target", this.NamespaceManager);
這樣列出來應該就懂了吧,可別弄錯了。
Step2.移動節點
當我們引用XPathNodeIterator 後,需要用MoveNext方法來取得欄位內容
string value = string.Empty;
if (retable != null)
{
while (retable.MoveNext())
{
value += retable.Current.Value+"\n";
Console.WriteLine(value);
}
}
執行結果
範例下載
Infopath 2010Demo4.rar
若有謬誤,煩請告知,新手發帖請多包涵
Microsoft MVP Award 2010~2017 C# 第四季
Microsoft MVP Award 2018~2022 .NET