Tengo una página con una tabla de cosas y debo permitir que el usuario seleccione las filas para procesar. He descubierto cómo agregar una columna de casillas de verificación a la tabla, pero parece que no puedo averiguar cómo comprobar si están marcadas cuando se envía el formulario. Si fueran elementos estáticos, podría simplemente verificarlo, this.theCheckBoxpero están generados programáticamente.
Además, no estoy muy contento con la forma en que estoy adjuntando mis datos a ellos (rellenándolo en la propiedad ID).
No estoy seguro de si es relevante, pero estoy buscando un catch-22, ya que necesito saber cuáles de las casillas de verificación que se crearon la última vez se verificaron antes de poder volver a ejecutar el código que las creó.
Editar:
he encontrado una solución casi. Al establecer la AutoPostBackpropiedad y el CheckedChangedevento:
checkbox.AutoPostBack = false;
checkbox.CheckedChanged += new EventHandler(checkbox_CheckedChanged);
Puedo hacer que se llame al código en una publicación posterior para cualquier casilla de verificación que haya cambiado. Sin embargo, esto tiene dos problemas:
- La devolución de llamada se procesa después de (o durante, no estoy seguro)
Page_Loaddonde necesito usar esta información - No se solicita la devolución de llamada para las casillas de verificación que se verificaron cuando la página se cargó y todavía están.
Editar 2:
Lo que terminé haciendo fue etiquetar todas mis identificaciones con un prefijo conocido y rellenar esto en la parte superior de Form_Load:
foreach (string v in this.Request.Form.AllKeys)
{
if (v.StartsWith(Prefix))
{
var data = v.Substring(Prefix.Length);
}
}
todo lo demás parece llegar tarde.













