/// <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;
}