我在GridView中使用了模板复选框以用于多行删除,当我选择复选框并执行删除操作时,选择多个行时,似乎选择了复选框,在代码上未返回true。下面。
受保护的void button6_click(对象发送者,EventArgs e) {
foreach (GridViewRow row in GridView1.Rows)
{
LinkButton ch = new LinkButton();
ch = (LinkButton)row.FindControl("l1");
id = Convert.ToInt16(ch.CommandArgument);
CheckBox chs = new CheckBox();
chs = ((CheckBox)row.FindControl("c1"));
if (chs.Checked == true)
{
DeleteSelected(id);
}
}
}
private void DeleteSelected(short id)
{
var ch = from a in empd.Employees where (a.ID == id) select a;
empd.Employees.DeleteAllOnSubmit(ch);
empd.SubmitChanges();
display_emp();
}
有人可以帮助我为什么CheckBox
在调用功能中不返回真实价值。
现在我已经修复了所有连接,请刷新数据库。请在以下链接中获取Web应用程序。
http://www.ziddu.com/download/20716096/webapplication.zip.html请帮助我了解为什么选定的复选框在代码中不返回true。
详细信息: add if(ispostback)在开始时,否则只需重置网格控件即可。下面的示例
解决方案:
if (!IsPostBack)
{
empd = new Employee_DetailsDataContext();
empd.Connection.ConnectionString = ConfigurationManager.ConnectionStrings["DemosConnectionString1"].ConnectionString;
display_emp();
}