السلام عليكم @محمد علي23
يمكنك فعل ذلك من خلال إضافة الميثود التالي إلى ملف CS مع تعديلها بما يتناسب مع إسماء الحقول لديك
private void BindGrid()
{
SqlConnection con = new SqlConnection();
DataTable dt = new DataTable();
con.ConnectionString = @"Data Source=localhost;Initial Catalog=Employees;Integrated Security=True";
SqlCommand cmd = new SqlCommand("Select * From Employees", con);
SqlDataAdapter da = new SqlDataAdapter(cmd);
da.Fill(dt);
con.Open();
cmd.ExecuteNonQuery();
con.Close();
if (dt.Rows.Count > 0)
{
GridViewEmployee.DataSource = dt;
GridViewEmployee.DataBind();
}
}
ونقوم بإستدعائها في page_load هكذا
if (!Page.IsPostBack)
{
BindGrid();
}
وفي زر الحذف قم بإضافة الكود التالي مع تغييره بما يتناسب معك
protected void btnDeleteRecords_Click(object sender, EventArgs e)
{
DataTable dt = new DataTable();
dt.Columns.AddRange(new DataColumn[2] { new DataColumn("Name", typeof(string)),
new DataColumn("Email",typeof(string)) });
foreach (GridViewRow row in GridViewEmployee.Rows)
{
if ((row.FindControl("chkSelect") as CheckBox).Checked)
{
int ID = Convert.ToInt32(GridViewEmployee.DataKeys[row.RowIndex].Value);
using (SqlConnection con = new SqlConnection(@"Data Source=localhost;Initial Catalog=Employees;Integrated Security=True"))
{
con.Open();
SqlCommand cmd = new SqlCommand("DELETE FROM Employees WHERE ID=" + ID, con);
cmd.ExecuteNonQuery();
con.Close();
}
}
}
this.BindGrid();
}
بعد تطبيق ذلك يمكنك تحديد ما تريد حذفه وعند ضغط زر الحذف سيتم حذف المحدد بنجاح