2
目前我有一个Button Click事件,它从Datagrid中的一行(通过复选框)获取DataKey并将其分配给INT变量以更新数据库中的个人。当我只选中1复选框并运行更新时,一切正常。不过,我需要用户必须选择所有的复选框,并采取所有这些Datakeys并将其分配给同一个变量从gridview获取多行DataKeys
INT oNewParentID
就像我说的时候只有1复选框被选中evrything正常工作的选项。我想我正在问如何获取Uknoiwn数量的Datakeys或所有复选框选择的所有DataKeys,并将它们存储在上面的变量中以运行所选个人的更新。这是到目前为止我的按钮单击事件被选择工作1个复选框:
protected void imgbtnReassgin_Click(object sender, ImageClickEventArgs e)
{
foreach (GridViewRow row in gvSalesmanCustomers.Rows)
{
CheckBox cb = (CheckBox)row.FindControl("chkSalesCustSelector");
if (cb != null && cb.Checked)
{
int oIndividualID = Convert.ToInt32((gvSalesmanCustomers.DataKeys[row.RowIndex].Value));
foreach (GridViewRow r in gvSalesmanByManager.Rows)
{
CheckBox chkBox = (CheckBox)r.FindControl("chkManagerSalesSelector");
if (chkBox != null && chkBox.Checked)
{
int oNewParentID = Convert.ToInt32((gvSalesmanByManager.DataKeys[r.RowIndex].Value));
Individual ind = new Individual();
ind.ReassignIndividual(oIndividualID, oNewParentID);
chkBox.Checked = false;
cb.Checked = false;
}
}
}
}
}
而且她是我的更新存储过程:
CREATE DEFINER=`root`@`%` PROCEDURE `reassign_Individual`(
IN oIndividualID int(11),
IN oNewParentID int(11)
)
BEGIN
Update intelliair.individual
set ParentID = oNewParentID
Where IndividualID = oIndividualID;END