在窗体中一个datalist控件id是dl,在其中放一个checkbox控件,id是ck,然后通过陕西.吴旗的分页控件来分页,在datalist的外边放一个button,想实现删除所有选中checkbox的数据,,,但,我只能删除在本页中选中的数据,不知道大家还有没有好的办法,给提供一下代码,我的代码如下:
private void ImageButton5_Click(object sender, System.Web.UI.ImageClickEventArgs e)
{
string strconn1=ConfigurationSettings.AppSettings["lyb"];
SqlConnection conn1=new SqlConnection(strconn1);
conn1.Open();
string strsql1="delete from main where id=@id ";
SqlCommand cmd1=new SqlCommand(strsql1,conn1);
cmd1.Parameters.Add("@id",SqlDbType.Int );
foreach(DataListItem chklst in dl.Items )
{
if(((CheckBox)chklst.FindControl("ck")).Checked)
{
cmd1.Parameters["@id"].Value=(int)dl.DataKeys[chklst.ItemIndex ];
cmd1.ExecuteNonQuery();
}
}
conn1.Close();
Response.Redirect("default.aspx"); }
private void ImageButton5_Click(object sender, System.Web.UI.ImageClickEventArgs e)
{
string strconn1=ConfigurationSettings.AppSettings["lyb"];
SqlConnection conn1=new SqlConnection(strconn1);
conn1.Open();
string strsql1="delete from main where id=@id ";
SqlCommand cmd1=new SqlCommand(strsql1,conn1);
cmd1.Parameters.Add("@id",SqlDbType.Int );
foreach(DataListItem chklst in dl.Items )
{
if(((CheckBox)chklst.FindControl("ck")).Checked)
{
cmd1.Parameters["@id"].Value=(int)dl.DataKeys[chklst.ItemIndex ];
cmd1.ExecuteNonQuery();
}
}
conn1.Close();
Response.Redirect("default.aspx"); }
private void CheckCbx()
{
LabID.Text="";
for(int i=0;i<DataGrid1.Items.Count;i++)
{
CheckBox CbxTable=(CheckBox)DataGrid1.Items[i].FindControl("CbxSelect");
if(CbxTable.Checked==true)
{
if(LabID.Text=="")
{
LabID.Text=DataGrid1.Items[i].Cells[1].Text.Trim();
}
else
{
LabID.Text=LabID.Text+","+DataGrid1.Items[i].Cells[1].Text.Trim();
}
}
}
}
strTableID=LabID.Text.Trim();
strSql="delete from USER_TABLE where ID in(" + strTableID + ")" ;这样就OK了