您的位置:首页 > 其它

【Vegas原创】GridView跨页选择多行数据,并循环添加一行DataSet数据

2008-07-29 12:55 435 查看
Utility.aspx.cs:(主页面)

try

{

DataTable dt = new DataTable();

//获取Utility_Pre.aspx多个ID Session

string[] strArrUtilizeID = Session["utilizeID"].ToString().Split(';');

//ID循环

for (int i = 0; i < strArrUtilizeID.Length-1; i++)

{

//获取数据库

SqlParameter[] sqlParam = new SqlParameter[1];

sqlParam[0] = new SqlParameter("@utilizeID", SqlDbType.Int, 4, ParameterDirection.Input, false, 0, 0, "@utilizeID", DataRowVersion.Default,strArrUtilizeID[i].ToString());

ds = db.GetDataSet("procUtility", sqlParam);

//DataTable初始化

# region dt Column

if (i == 0)

{

for (int intColumn = 0; intColumn < ds.Tables[0].Columns.Count; intColumn++)

{

dt.Columns.Add(ds.Tables[0].Columns[intColumn].ColumnName);

}

}

# endregion

//DataRow 初始化

DataRow dr = dt.NewRow();

for (int intCol = 0; intCol < ds.Tables[0].Columns.Count; intCol++)

{

#region dr

if (ds.Tables[0].Columns[intCol].ColumnName == "M_Piece" || ds.Tables[0].Columns[intCol].ColumnName == "M_Utilize")

{

try

{

dr[intCol] = decimal.Parse(ds.Tables[0].Rows[0][intCol].ToString());

}

catch

{

dr[intCol] = 0;

}

}

else if (ds.Tables[0].Columns[intCol].ColumnName == "UpdateDate")

{

try

{

dr[intCol] = DateTime.Parse(ds.Tables[0].Rows[0][intCol].ToString());

}

catch

{

dr[intCol] = DateTime.Now;

}

}

else

{

dr[intCol] = ds.Tables[0].Rows[0][intCol].ToString();

}

# endregion

}

dt.Rows.Add(dr);

}

grdUtility.DataSource = dt;

grdUtility.DataBind();

}

catch (Exception e)

{

string strEX = e.ToString();

}

Utility_Pre.aspx.cs

protected void btnOK_Click(object sender, EventArgs e)

{

string strUID = "";

for (int i = 0; i < grdPre.Rows.Count; i++)

{

if (((CheckBox)grdPre.Rows[i].Cells[0].FindControl("item")).Checked == true)

{

string strD = ((Label)grdPre.Rows[0].Cells[10].FindControl("Label1")).Text;

string strM = ((Label)grdPre.Rows[0].Cells[11].FindControl("Label2")).Text;

string strSql = "select max(utilizeID) from t_bputilize";

DataSet ds = db.GetDataSet(strSql);

int intU = int.Parse(ds.Tables[0].Rows[0][0].ToString())+1;

strSql = "insert into t_bputilize(utilizeID,MoelGroupID,DetailID) values('"+intU+"','" + strM + "','" + strD + "')";

db.ExecuteNonQuery(strSql);

strUID = strUID+intU.ToString()+";";

}

}

Session["utilizeID"] = strUID;

Response.Write("<script>window.opener.refresh();window.close()</script>");

}

Utility_Pre.aspx:

<yyc:SmartGridView ID="grdPre" runat='server' AutoGenerateColumns="False">

<HeaderStyle CssClass="grid_head" />

<Columns>

<asp:TemplateField>

<headertemplate>

<asp:CheckBox ID="all" runat="server" />

</headertemplate>

<itemtemplate>

<asp:CheckBox ID="item" runat="server" />

</itemtemplate>

<itemstyle width="50px" />

</asp:TemplateField>

<asp:BoundField DataField="CMALPH" HeaderText="Customer" />

<asp:BoundField DataField="Size" HeaderText="Size" />

<asp:BoundField DataField="TACFilm" HeaderText="TACFilm" />

<asp:BoundField DataField="Treatment" HeaderText="Treatment" />

<asp:BoundField DataField="thickness" HeaderText="Thickness" />

<asp:BoundField DataField="Tablets" HeaderText="T/B" />

<asp:BoundField DataField="AbsorAngle" HeaderText="Absorption Angle" />

<asp:BoundField DataField="DimensionX" HeaderText="Dimension_X" />

<asp:BoundField DataField="DimensionY" HeaderText="Dimension_Y" />

<asp:TemplateField HeaderText="DetailID" visible="false">

<edititemtemplate>

<asp:TextBox runat="server" Text='<%# Bind("DetailID") %>' id="TextBox1"></asp:TextBox>

</edititemtemplate>

<itemtemplate>

<asp:Label runat="server" Text='<%# Bind("DetailID") %>' id="Label1"></asp:Label>

</itemtemplate>

</asp:TemplateField>

<asp:TemplateField HeaderText="ModelGroupID" visible="false">

<edititemtemplate>

<asp:TextBox runat="server" Text='<%# Bind("ModelGroupID") %>' id="TextBox2"></asp:TextBox>

</edititemtemplate>

<itemtemplate>

<asp:Label runat="server" Text='<%# Bind("ModelGroupID") %>' id="Label2"></asp:Label>

</itemtemplate>

</asp:TemplateField>

</Columns>

<CascadeCheckboxes >

<yyc:CascadeCheckbox ChildCheckboxID="item" ParentCheckboxID="all" />

</CascadeCheckboxes>

</yyc:SmartGridView>

<asp:Button ID="btnOK" runat="server" OnClick="btnOK_Click" Text="确定" /></div>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: