現在、クライアントが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を取得しませんでした –