Tengo un GridView al que le he añadido un ItemTemplate para mostrar una casilla de verificación para cada fila. Estoy tratando de simplemente eliminar las filas marcadas en el archivo de código detrás. Mi problema es que mi código detrás no detecta la casilla de verificación. Es muy extraño porque siento que no he cambiado nada, pero el código ya no funciona (funcionaba hace dos días, pero guardé estos cambios localmente - no los subí a TFS).
GridView (EDITADO PARA INCLUIR ENLACE):
<%--Data Grid--%>
<%--Botón de Eliminar--%>
<%--Fuentes de Datos--%>
Código trasero:
[WebMethod]
protected void DeleteRows(object sender, EventArgs e)
{
dbCRUD delete = new dbCRUD();
foreach(GridViewRow grd in Grid_Recipe.Rows)
{
if(grd.RowType == DataControlRowType.DataRow)
{
if((grd.FindControl("deleteCheckbox") as CheckBox).Checked)
{
string id = Grid_Recipe.DataKeys[grd.RowIndex].Value.ToString();
//int intID = Convert.ToInt32(Grid_Recipe.SelectedDataKey.Value);
int intID = int.Parse(id);
if(delete.DeleteRecord(intID) == 1)
{
resultsDelete.Text = "Excepción SQL";
resultsDelete.Visible = true;
break;
}
else if(delete.DeleteRecord(intID) == 2)
{
resultsDelete.Text = "Excepción no SQL";
resultsDelete.Visible = true;
break;
}
else
{
resultsDelete.Text = "Registro(s) eliminado";
resultsDelete.Visible = true;
}
}
}
}
}
¿Hay algo en mi código que impida detectar la casilla de verificación? He puesto un breakpoint en el método y llego a donde comprueba la validación de la casilla de verificación, pero después de recorrer cada fila, no se detectan filas. ¡Gracias de antemano!