GridView添加行 GridView操作类

来源:互联网 发布:结婚证软件 编辑:程序博客网 时间:2024/05/21 17:37
/// <summary>
    /// 添加一行操作
    /// </summary>
    private void AddGridViewLine()
    {
        // 读取原有的GridView
        DataTable CargoInfoTable = ReadGridView();
        // 新增加一行
        DataRow newRow = CargoInfoTable.NewRow();
        // 将新增加的这一行添加到原有的GridView上
        CargoInfoTable.Rows.Add(newRow);
        // 设置最后一行的是否只读
        CargoInfoTable.Rows[CargoInfoTable.Rows.Count - 1]["EnableFlag"] = "1";
        // 将变化后的Table帮定在GridView上
        this.CargoInfo.DataSource = CargoInfoTable;
        this.CargoInfo.DataBind();
    }

 


    /// <summary>
    /// 读取GridView操作,用来添加一行
    /// </summary>
    /// <returns></returns>
    private DataTable ReadGridView()
    {
        DataTable newDataTable = new DataTable("Table1");

        newDataTable = doAddOneLineColumns(newDataTable);


        for (int i = 0; i < CargoInfo.Rows.Count; i++)
        {
            GridViewRow gRow = CargoInfo.Rows[i];
            DataRow newRow = newDataTable.NewRow();
            newRow[0] = ((HtmlInputText)gRow.FindControl("CargoInListID")).Value;
            newRow[1] = ((HtmlInputText)gRow.FindControl("EnableFlag")).Value;
            newRow[2] = ((HtmlInputText)gRow.FindControl("pid")).Value;
            newRow[3] = ((TextBox)gRow.FindControl("ProvideName")).Text;
            newRow[4] = ((HtmlInputText)gRow.FindControl("cid")).Value;
            newRow[5] = ((TextBox)gRow.FindControl("CargoID")).Text;
            newRow[6] = ((TextBox)gRow.FindControl("CargoName")).Text;
            newRow[7] = ((TextBox)gRow.FindControl("ChineseName")).Text;
            newRow[8] = ((TextBox)gRow.FindControl("ShopSign")).Text;
            newRow[9] = ((TextBox)gRow.FindControl("CargoModel")).Text;
            newRow[10] = ((TextBox)gRow.FindControl("Country")).Text;
            newRow[11] = ((TextBox)gRow.FindControl("Yieldly")).Text;
            newRow[12] = ((TextBox)gRow.FindControl("MaterielCode")).Text;
            newRow[13] = ((TextBox)gRow.FindControl("LiXinCode")).Text;
            newRow[14] = ((TextBox)gRow.FindControl("InCountMain")).Text;
            newRow[15] = ((DropDownList)gRow.FindControl("ddlUnitsCodeMain")).SelectedValue;
            newRow[16] = ((TextBox)gRow.FindControl("UnitsCodeMain")).Text;
            newRow[17] = ((TextBox)gRow.FindControl("UnitsPriceMain")).Text;
            newRow[18] = ((TextBox)gRow.FindControl("InCountSon")).Text;
            newRow[19] = ((DropDownList)gRow.FindControl("ddlUnitsCodeSon")).SelectedValue;
            newRow[20] = ((TextBox)gRow.FindControl("UnitsCodeSon")).Text;
            newRow[21] = ((TextBox)gRow.FindControl("UnitsPriceSon")).Text;
            newRow[22] = ((TextBox)gRow.FindControl("AllPrice")).Text;
            newRow[23] = ((TextBox)gRow.FindControl("Suttle")).Text;
            newRow[24] = ((TextBox)gRow.FindControl("GrossWeight")).Text;
            newRow[25] = ((TextBox)gRow.FindControl("BoxCode")).Text;
            newRow[26] = ((TextBox)gRow.FindControl("PONumber")).Text;
            newRow[27] = ((TextBox)gRow.FindControl("BoxMai")).Text;
            newRow[28] = ((TextBox)gRow.FindControl("RegName")).Text;
            newRow[29] = ((TextBox)gRow.FindControl("Mender")).Text;
            newDataTable.Rows.Add(newRow);
        }
        newDataTable.AcceptChanges();
        return newDataTable;

    }

 

    /// <summary>
    /// 添加行之前,给这一行添加各个列名
    /// </summary>
    /// <param name="aimDataTable"></param>
    /// <returns></returns>
    private DataTable doAddOneLineColumns(DataTable aimDataTable)
    {
        aimDataTable.Columns.Add("CargoInListID");
        aimDataTable.Columns.Add("EnableFlag");
        aimDataTable.Columns.Add("pid");
        aimDataTable.Columns.Add("ProvideName");
        aimDataTable.Columns.Add("cid");
        aimDataTable.Columns.Add("CargoID");
        aimDataTable.Columns.Add("CargoName");
        aimDataTable.Columns.Add("ChineseName");
        aimDataTable.Columns.Add("ShopSign");
        aimDataTable.Columns.Add("CargoModel");
        aimDataTable.Columns.Add("Country");
        aimDataTable.Columns.Add("Yieldly");
        aimDataTable.Columns.Add("MaterielCode");
        aimDataTable.Columns.Add("LiXinCode");
        aimDataTable.Columns.Add("InCountMain");
        aimDataTable.Columns.Add("ddlUnitsCodeMain");
        aimDataTable.Columns.Add("UnitsCodeMain");
        aimDataTable.Columns.Add("UnitsPriceMain");
        aimDataTable.Columns.Add("InCountSon");
        aimDataTable.Columns.Add("ddlUnitsCodeSon");
        aimDataTable.Columns.Add("UnitsCodeSon");
        aimDataTable.Columns.Add("UnitsPriceSon");
        aimDataTable.Columns.Add("AllPrice");
        aimDataTable.Columns.Add("Suttle");
        aimDataTable.Columns.Add("GrossWeight");
        aimDataTable.Columns.Add("BoxCode");
        aimDataTable.Columns.Add("PONumber");
        aimDataTable.Columns.Add("BoxMai");
        aimDataTable.Columns.Add("RegName");
        aimDataTable.Columns.Add("Mender");

        return aimDataTable;
    }