第一步,显示checkbox按钮;
点击AspxGridView的columns,你可以直接选择增加一行Command Column或者随便选择一种然后点击Change To Commadn Column;默认的ShowSelectCheckBOx是true,我们可以不用管,这样你就看到每行都有checkBox按钮了。
第二步,表头部显示CheckBox,点击实现全选|反选功能;
我们切换回源代码,找到AspxGridView的GridViewCommandColumn列,在该列中增加
<HeaderTemplate> <dx:ASPxCheckBox ID="DchkAll" runat="server" ClientSideEvents-CheckedChanged="function(s,e){DgvwEmail.SelectAllRowsOnPage(s.GetChecked());}"> </dx:ASPxCheckBox> </HeaderTemplate> <HeaderStyle HorizontalAlign="Center" />
我们在HeaderTemplate增加一个Dev的CheckBox按钮,设置他的样式为HorizontalAlign="Center" ,呈居中状态,我们给这个CheckBox按钮ClientSideEvents-CheckedChanged增加了一个方法function(s,e){DgvwEmail.SelectAllRowsOnPage(s.GetChecked());},DgvwEmail为你AspxGridView控件的ID,到此,你就实现了表头部的全选|反选功能了;
第三步,获取选中行的ID,实现批量删除或更改;
我们在页面中增加一个Dev的Button按钮,给按钮添加点击事件;
首先我们写一个方法获取到所有选中行的ID
protected string GetDelID() { string delId = "";
//获取选中的记录Id List<object> lSelectValues = DgvwEmail.GetSelectedFieldValues("ID");
for (int i = 0; i < lSelectValues.Count; i++) { delId += lSelectValues[i] + ","; }
delId = delId.Substring(0, delId.LastIndexOf(','));
return delId; }
这个方法获取到了选中行的的Id,通过AspxGridView.GetSelectedFieldValues("ID")获取绑定数据时的Id主键,然后遍历所获得ID;
接下来步骤就和写其他的全选删除一样,自己可以试着去写写。