Asp.net ASPxGridView删除输入类型为多行复选框
我有一个Asp.net ASPxGridView删除输入类型为多行复选框,asp.net,.net,webforms,devexpress,aspxgridview,Asp.net,.net,Webforms,Devexpress,Aspxgridview,我有一个dx:ASPxGridView,有一个输入类型,复选框列。当我一个接一个地从下到上删除时,它可以删除,但当从上到下删除时,它不起作用 这是我的密码: protected void grdItems_CustomCallback(object sender, DevExpress.Web.ASPxGridView.ASPxGridViewCustomCallbackEventArgs e) { if (e.Parameters.StartsWith("del
dx:ASPxGridView
,有一个输入类型,复选框列。当我一个接一个地从下到上删除时,它可以删除,但当从上到下删除时,它不起作用
这是我的密码:
protected void grdItems_CustomCallback(object sender,
DevExpress.Web.ASPxGridView.ASPxGridViewCustomCallbackEventArgs e)
{
if (e.Parameters.StartsWith("del"))
{
var PurchaseCol = grdItems.Columns["Purchase"] as GridViewDataColumn;
var BoCustomer = BoCustomerPO;
for (int i = 0; i < grdItems.VisibleRowCount; i++)
{
var order = (HtmlInputCheckBox)grdItems.FindRowCellTemplateControl(i, PurchaseCol, "selectRec");
if(order.Checked == true)
{
string orderID = Convert.ToString(order.Value);
BOCustomerPOBL.DeletePO(BoCustomerPO, orderID);
}
}
BindGrid();
}
}
protectedvoid grdtems\u CustomCallback(对象发送方,
DevExpress.Web.ASPxGridView.ASPxGridViewCustomCallbackEventArgs(e)
{
如果(例如,参数开始使用(“del”))
{
var PurchaseCol=grdItems.Columns[“Purchase”]作为GridViewDataColumn;
var BoCustomer=BoCustomerPO;
对于(int i=0;i
FindRowCellTemplateControl
,删除此控件中的一行后,将再次查找已删除的行,而不是获取第二行。如果您只是从数据库中删除行,Grid不知道您已删除该行。使用DeleteRow方法删除行,使用RowDeleteing/RowDeleted事件进行额外的删除处理。
此外,您还可以使用ASPxgridView选择功能,而不是带有复选框的单元模板。以下是删除多个ASPxGridView行的完整示例:
阅读“删除行”部分