![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
||||
|
||||
|
En asp.net puedes trabajar con dos tipos de controles: los que corren en el servidor (webcontrols, miembros de system.web.ui.webcontrols) y los tradicionales controles HTML, como los botones y cajas de texto <input>
Esos controles html, mas bien sus propiedades, no se pueden acceder desde la parte de asp.net que ejecuta en el servidor, puesto que todas las propiedades son manejadas del lado del cliente, es decir, no se incluye una referencia al control y sus propiedades en el viewstate de la pagina. Para subsanar eso, tienes que utilizar en vez de un <input type=button> o control botón de html en el webform, el equivalente boton de los WebControls, que tambien deben aparecer en la barra de componentes en el IDE de Delphi 2005 (no lo he usado) Tambien puedes, seleccionar el boton y en sus propiedades (la pestaña de propiedades del objeto) ponerle la opcion runat en server, o, al menos en visualStudio, le das click derecho y aparece una opción que dice "run as server control". Te ha quedado mas claro?
__________________
Héctor Geraldino Software Engineer |
|
#2
|
|||
|
|||
|
Muchas gracias, he entendido perfectamente la diferencia entre los controles de asp.net y los básicos de HTML.
El problema q tengo es que no entiendo muy bien por qué utilizar un botón de asp.net, si yo lo que quiero es utilizar un campo de texto y asignarle el valor de una variable asp.net. |
|
#3
|
||||
|
||||
|
... porque no puedes acceder desde el compilado (codebehind que genera la dll de tu aplicacion) a las variables de controles que NO corren en modo servidor (runat=server). Esto porque esos controles NO se guardan en el viewstate, tampoco sus propiedades, y NO puedes, desde la programacion en la pagina (fuente) hacer un Control.Propiedad = talcosa, porque te dara el error de que la referencia al objeto no existe.
Al mismo tiempo, un boton pura y simplemente html NO llama a la funcion __dopostback, asi que no refresca la pagina en cada clic haciendo un POST al servidor, por lo que cualquier codigo que hayas programado para el evento click del mismo en Delphi.NET (o cualquier lenguaje que ejecute ASP.NET) NO se ejecutara. Es algo un poco diferente al clasico asp, lo que yo no entiendo es por que te traeria tantas complicaciones sustituir un boton por otro, si ambos se ven exactamente iguales. Por cierto, nos das un poco de codigo de cuando te da la excepcion de Object reference.... <?>
__________________
Héctor Geraldino Software Engineer |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
|