Deshabilitar Controles ASP.NET

22/12/2004 - 14:01 por Anonimo | Informe spam
Hola grupo...

TEngo varias páginas ASPX que muestran una seria de
controles para meter datos y luego insertarlos en BBDD.

El caso que en mi aplicación, digamos, hay un modo
Consulta (ó Visualización) y quisiera utilizar la misma
página ASPX con los mismos controles (cargados con los
datos de BBDD) pero deshabilitados para que no se puedan
modificar datos.

Cómo podría hacerlo de una forma genérica ? En qué método
o evento sería lo ideal: Load, Init, Render, prerender...?

Gracias.

Preguntas similare

Leer las respuestas

#1 Antonio Castro
22/12/2004 - 15:51 | Informe spam
Hola... quizás tu pregunta estaría mejor en el grupo de noticias ASP.NET. En
todo caso no se si los controles de los que hablas son de desarrollo propio.
Creo entender que si. En ese caso desde mi punto de vista lo mejor sería
considerar las distintincion entre modo lectura o modo lectura escritura en
el método Render de la página.

Los controls 'custom' heredan la propiedad Enabled. En el método Render
pueden distinguir si esta propiedad está a valor True o False (según haya
sido indicado de forma externa). En caso de que sea true deberá renderizar
una cosa, por ejemplo una control HTML de tipo input y si es False puedes
renderizar texto (el valor del registro) dentro de un una etiqueta DIV por
ejemplo. Espero que te sirva de punto de partida aunque espero feedback
porque es un tema interesante...


"" wrote:

Hola grupo...

TEngo varias páginas ASPX que muestran una seria de
controles para meter datos y luego insertarlos en BBDD.

El caso que en mi aplicación, digamos, hay un modo
Consulta (ó Visualización) y quisiera utilizar la misma
página ASPX con los mismos controles (cargados con los
datos de BBDD) pero deshabilitados para que no se puedan
modificar datos.

Cómo podría hacerlo de una forma genérica ? En qué método
o evento sería lo ideal: Load, Init, Render, prerender...?

Gracias.

Respuesta Responder a este mensaje
#2 Anonimo
22/12/2004 - 16:00 | Informe spam
La mayoría de los controles son WebControls, salvo alguno
que es Custom.

El objetivo sería recorrer todos los WebControls de la
página y poner Enabled a true o false según el caso, en
el método Render como dices.

No sé cuál sería la opción maŽs optima.
Respuesta Responder a este mensaje
#3 Antonio Castro
22/12/2004 - 16:15 | Informe spam
No es cuestión de cual es la solución más óptima. Si usas WebControls estos
son cajas cerradas. Los de microsoft se renderizan en modo lectura si
colocas su flag Enabled a false. En los Custom Controls esto has de
controlarlo tú "a mano" en el método Render del Control como te comente.
Ahora en la página que instancia y hospeda los controles has de colocar
el flag de TODOS los controles de la página a false o true según estés en
modo lectura o no. Para ello puedes iterear por la colección de controles de
la página (suponiendo que estos hayan sido instanciados en el OnInit o el
page front ASPX de la página y colocar la propiedad Enabled de cada control
al valor de interés según el modo de acceso a la página

"" escribió:

La mayoría de los controles son WebControls, salvo alguno
que es Custom.

El objetivo sería recorrer todos los WebControls de la
página y poner Enabled a true o false según el caso, en
el método Render como dices.

No sé cuál sería la opción ma´s optima.

email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida