protected void gv_RowCommand(object sender, GridViewCommandEventArgs e) { switch (e.CommandName) { case "cancelar": ImageButton btn = (ImageButton)e.CommandSource; GridViewRow gvr = (GridViewRow)btn.NamingContainer; String username = (string)gv.DataKeys[gvr.RowIndex].Value; if (ViewState["username"].ToString().ToLower() == username.ToLower().ToString()) { if (PedidoController.Cancelar(Convert.ToInt32(e.CommandArgument))) { Mensaje(true, "El pedido fue cancelado"); } else { Mensaje(false, "", "El pedido No puede ser cancelado si esta preparandose o fue encargado"); } } else { Mensaje(false, "", "El pedido solo puede ser cancelado por el usuario que lo solicito."); } break; } CargaGrilla(); CalcularSubtotal(); }