我目前正在幫助客戶創建InfoPath和Im的表單,並且遇到了一些問題,讓我的列表像我想要的那樣工作。InfoPath以編程方式添加新行到列表結尾
每當我向列表中添加一個新元素(重複節)時,它會在視圖的列表頂部結束,我希望它被添加到底部。我的客戶想要一個自定義按鈕來觸發添加元素,而不是使用InfoPath提供的「添加元素」文本。
下面是一個例子,以更好地解釋我的問題:
當用戶在輸入欄中寫的東西,我希望它被添加到重複節的列表。下面是一個示例代碼:
private XPathNavigator GetField(string xPath)
{
return MainDataSource.CreateNavigator()
.SelectSingleNode(xPath, NamespaceManager);
}
public void CTRL10_5_Clicked(object sender, ClickedEventArgs e)
{
string xPathToList = "/my:myFields/my:group5/my:group6/my:group7";
string xPathToInput = "/my:myFields/my:group5/my:field2";
string xPathToListElement = xPathToList + "/my:field3";
//Creates a new row
XPathNavigator list = GetField(xPathToList);
XPathNavigator newRow = list.Clone();
newRow.InsertAfter(list);
//Sets values on the new row
XPathNavigator input = GetField(xPathToInput);
XPathNavigator nameField = GetField(xPathToListElement);
nameField.SetValue(input.Value);
input.SetValue("");
}
有什麼建議?
感謝您的回覆。使用InfoPath 2010,我沒有在CurrentView下獲得ExecuteAction –