ASP.net 2.0 Gridview con filas de panel desplegables & # 8212; Cómo construir Panel & # 8220; sobre la marcha & # 8221;

StackOverflow https://stackoverflow.com/questions/306920

Pregunta

Actualmente estoy creando una vista de cuadrícula que tiene filas expandibles. Cada fila contiene un panel de elementos de formulario creado dinámicamente. En este momento, tengo una función de JavaScript que expande (o en mi caso, hace visible) el panel cuando se hace clic en una imagen en la fila Gridview.

Mi pregunta es ... ¿hay una manera más eficiente de hacer esto? En lugar de extraer todos mis datos para comenzar y crear cada nueva fila como I Databind, ¿hay alguna manera de crear la fila con el Panel lleno de cuadros de texto y listas desplegables sobre la marcha cuando el usuario hace clic en el botón Expandir? & Quot;

Me gustaría limitar las llamadas al servidor haciéndolo de esa manera en lugar de cómo lo estoy haciendo actualmente, recorriendo cada fila y creando un nuevo panel con elementos de formulario e insertándolo en una fila que está oculta.

¿Fue útil?

Solución 4

Realmente funcionó esto recientemente en un controlador AJAX que devolvió la estructura del formulario. Es bajo demanda y funciona bien. Simplemente llame a $ ajax a través de jQuery, devuelva una estructura HTML, inyecte en DIV. Limita un poco la funcionalidad real, así que tenga cuidado.

Otros consejos

En realidad, no está funcionando mal ya que mi consulta SQL original puede llenar cada fila y he habilitado la paginación en la vista de cuadrícula. Me pregunto si se pueden construir sobre la marcha utilizando PageMethods o algún tipo de solución JSON / AJAX. No he visto nada, pero ... vale la pena intentarlo.

puede anular el evento RowdataBound y luego agregar los controles que desee en función de los datos que se encuentren en la celda.

http: // msdn .microsoft.com / es-es / library / system.web.ui.webcontrols.gridview.rowdatabound.aspx

Intentar personalmente crear los datos sobre la marcha probablemente resultaría en una experiencia de usuario más lenta.

Cuando hago cosas como las que está describiendo, normalmente uso repetidores, de esa manera puedo hacer un diseño de plantilla que simplemente define todos los elementos necesarios de inmediato y maneja las acciones de enlace.

De lo contrario, me imagino que tu camino no funciona demasiado lento como lo es.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top