重复表的操作

using Microsoft.Office.InfoPath;
using System;
using System.Xml;
using System.Xml.XPath;
using System.Windows.Forms;

namespace 重复表
{
    public partial class FormCode
    {
        // 启用浏览器功能的表单不支持成员变量。
        // 请使用代码从 FormState 词典
        // 写入和读取这些值,如下所示:
        //
        // private object _memberVariable
        // {
        //     get
        //     {
        //         return FormState["_memberVariable"];
        //     }
        //     set
        //     {
        //         FormState["_memberVariable"] = value;
        //     }
        // }

        // 注意: 以下是 Microsoft Office InfoPath 所需的过程。
        // 可以使用 Microsoft Office InfoPath 对其进行修改。
        public void InternalStartup()
        {
            ((ButtonEvent)EventManager.ControlEvents["CTRL5_5"]).Clicked += new ClickedEventHandler(CTRL5_5_Clicked);
            ((ButtonEvent)EventManager.ControlEvents["CTRL6_5"]).Clicked += new ClickedEventHandler(CTRL6_5_Clicked);
        }

       //添加新行
       public void CTRL5_5_Clicked(object sender, ClickedEventArgs e)
        {
            XPathNavigator group = MainDataSource.CreateNavigator().SelectSingleNode("/my:root/my:body/my:RepeatTable[last()]", NamespaceManager);
            XPathNavigator NewRow = group.Clone();
            NewRow.InsertBefore(group);

            //设置默认值
            NewRow.SelectSingleNode("my:A", NamespaceManager).SetValue("test");
            NewRow.SelectSingleNode("my:B", NamespaceManager).SetValue("999.99");
            NewRow.SelectSingleNode("my:C", NamespaceManager).SetValue("2009-01-20");


        }


        //删除行
        public void CTRL6_5_Clicked(object sender, ClickedEventArgs e)
        {
            XPathNavigator group = MainDataSource.CreateNavigator().SelectSingleNode("/my:root/my:body/my:RepeatTable[last()]", NamespaceManager);

            //如果确认就删除
            DialogResult YESorNO = System.Windows.Forms.MessageBox.Show("您确认删除" + group.SelectSingleNode("my:A", NamespaceManager).Value + "这一行?", "", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning);
            if (YESorNO == DialogResult.OK)
           {
               group.DeleteSelf();
           }

        }
    }
}


 

关于作者: 王昕(QQ:475660) 在广州工作生活30余年。十多年开发经验,在Java、即时通讯、NoSQL、BPM、大数据等领域较有经验。
目前维护的开源产品:https://gitee.com/475660
原文地址:https://www.cnblogs.com/starcrm/p/1378917.html