• Viernes 29 de Marzo de 2024, 02:37

Autor Tema:  Plantillas De Formularios  (Leído 2786 veces)

colacao

  • Miembro activo
  • **
  • Mensajes: 55
    • Ver Perfil
Plantillas De Formularios
« en: Martes 20 de Diciembre de 2005, 19:05 »
0
Buenas tardes,

Me gustaria saber como realizar una plantilla para que todos mis formularios tenga la misma apariencia y que si modifico dicha plantilla se modifique el resto.
Muchas gracias.
Ciaooooooo

colacao

  • Miembro activo
  • **
  • Mensajes: 55
    • Ver Perfil
Re: Plantillas De Formularios
« Respuesta #1 en: Domingo 1 de Enero de 2006, 14:35 »
0
He creado un control de usuario para simular las plantillas pero tengo un problema.
Al control de usuario le doy unos metodos pero nose como acceder a ellos desde una pagina que contenga a ese control.
Nose si me explico.

tengo lo siguiente
Código: Text
  1.  
  2.  
  3. <body>
  4.  
  5. <form id="Form1" method="post" runat="server">
  6.    <div id="marco">
  7.        <uc1:cabecera id="Cabecera" runat="server"></uc1:cabecera>
  8.        <uc1:menul id="MenuL" runat="server"></uc1:menul>
  9.        <div id="principal">
  10.           <div id="navegacion">barra navegacion</div>
  11.           <div id="contenido">contenido</div>
  12.        </div>
  13.        <uc1:pie id="Pie" runat="server"></uc1:pie>
  14.   </div>
  15. </form>
  16.  
  17. </body>
  18.  
  19.  
  20.  


<uc1:menul id="MenuL" runat="server"></uc1:menul> es el control que tiene los metodos pero not engo acceso a el desde la pagina aspx.vb entonces no puedo acceder a sus metodos.
Como debo hacer?
Gracias

Güorker

  • Miembro MUY activo
  • ***
  • Mensajes: 383
    • Ver Perfil
Re: Plantillas De Formularios
« Respuesta #2 en: Lunes 2 de Enero de 2006, 08:25 »
0
Hola,

si no se te ha creado un objeto automaticamente en el archivo de codigo de servidor, lo creas tu con el mismo nombre que tiene en el codigo HTML y ya está.

Saludos
[size=109]Ondo ibili, gutxi gastau eta bueltak amari[/size]
[size=109]Pasalo bien, gasta poco y las vueltas a tu madre[/size]

colacao

  • Miembro activo
  • **
  • Mensajes: 55
    • Ver Perfil
Re: Plantillas De Formularios
« Respuesta #3 en: Lunes 2 de Enero de 2006, 16:45 »
0
perdona pero no te entiendo donde tengo q crear ese objeto.
Podrias explicarmelo un poco mas detallado?
Gracias.

Güorker

  • Miembro MUY activo
  • ***
  • Mensajes: 383
    • Ver Perfil
Re: Plantillas De Formularios
« Respuesta #4 en: Martes 3 de Enero de 2006, 08:18 »
0
Si,
En el archivo con extensión .vb que contiene el codigo de servidor de tu página (en la que has metido el control de usuario) debes de declarar el objeto con el mismo nombre que en el HTML:
Código: Text
  1.  
  2. Dim MenuL AS menul
  3.  
  4.  

Despues del AS debes poner el nombre de la clase del control de usuario, que no siempre coincide con lo que pone en el HTML.

Espero que te sirva.
[size=109]Ondo ibili, gutxi gastau eta bueltak amari[/size]
[size=109]Pasalo bien, gasta poco y las vueltas a tu madre[/size]

colacao

  • Miembro activo
  • **
  • Mensajes: 55
    • Ver Perfil
Re: Plantillas De Formularios
« Respuesta #5 en: Martes 3 de Enero de 2006, 11:04 »
0
si asi lo habia intentado pero me daba error.
Me ponia que era una referencia a un objeto no inicializado o algo asi.
Por eso no sabia como acceder a los metodos de dicho control.
Sabes que puede estar pasando?
Muchas gracias de todas formas.

Güorker

  • Miembro MUY activo
  • ***
  • Mensajes: 383
    • Ver Perfil
Re: Plantillas De Formularios
« Respuesta #6 en: Miércoles 4 de Enero de 2006, 08:53 »
0
No se me ocurre que te puede pasar.
Si pudieras poner el código que te falla quizás te pudiera ayudar.
Saludos
[size=109]Ondo ibili, gutxi gastau eta bueltak amari[/size]
[size=109]Pasalo bien, gasta poco y las vueltas a tu madre[/size]

colacao

  • Miembro activo
  • **
  • Mensajes: 55
    • Ver Perfil
Re: Plantillas De Formularios
« Respuesta #7 en: Miércoles 4 de Enero de 2006, 15:20 »
0
El codigo es el siguiente:

Enen HTML del formulario contenido21.aspx tengo:
Código: Text
  1.  
  2. &#60;form id=&#34;Form1&#34; method=&#34;post&#34; runat=&#34;server&#34;&#62;
  3.    &#60;div id=&#34;marco&#34;&#62;
  4.       &#60;uc1:cabecera id=&#34;Cabecera&#34; runat=&#34;server&#34;&#62;&#60;/uc1:cabecera&#62;
  5.       &#60;uc1:menuL id=&#34;menul&#34; runat=&#34;server&#34;&#62;&#60;/uc1:menuL&#62;
  6.       &#60;div id=&#34;principal&#34;&#62;
  7.          &#60;div id=&#34;navegacion&#34;&#62;barra navegacion&#60;/div&#62;
  8.          &#60;div id=&#34;contenido&#34;&#62;Vamos a ver el contenido 2&#60;/div&#62;
  9.       &#60;/div&#62;
  10.       &#60;uc1:pie id=&#34;Pie&#34; runat=&#34;server&#34;&#62;&#60;/uc1:pie&#62;
  11.    &#60;/div&#62;
  12. &#60;/form&#62;
  13.  
  14.  

Con esto intento darle apariencia de pagina web, con tres controles de usuario(cabecera, menu lateral y un pie) y luego a parte el contenido que es el que voy a modificar.
Dentro del control de usuario menul tengo unos metodos publicos que son los que quiero llamar desde el formulario contenido21.aspx pero como no me deja esa opción pq no lo reconoce, lo que intente fue lo que me dijiste.
En el page_load, hice:
Código: Text
  1.  
  2. Dim menul As menuL
  3. menul.activarContenido4()
  4.  
  5.  
pero me da el error siguiente:


Detalles de la excepción: System.NullReferenceException: Referencia a objeto no establecida como instancia de un objeto.

Error de código fuente:

Línea 24:         'Introducir aquí el código de usuario para inicializar la página
Línea 25:         Dim menul As menuL
Línea 26:         menul.activarContenido4()
Línea 27:         End Sub
Línea 28:

Güorker

  • Miembro MUY activo
  • ***
  • Mensajes: 383
    • Ver Perfil
Re: Plantillas De Formularios
« Respuesta #8 en: Jueves 5 de Enero de 2006, 08:54 »
0
Bien,
ahora creo que ya se cual es el problema. La sentencia
Código: Text
  1.  
  2. Dim menul As menuL
  3.  
  4.  

No debes ponerla en el page load. Esa sentencia debe ir fuera de cualquier metodo. Debe ir donde estan todas las declaraciones de atributos del WebForm, justo despues de la declaración de clase.
Algo asi:
Código: Text
  1.  
  2. Public Class WebForm1
  3.     Inherits System.Web.UI.Page
  4.  
  5.      .......
  6.      Dim menul As menuL
  7.      ......
  8.  
  9.      Private Sub Page_Load(......
  10.  
  11.  

A ver si con esto lo consigues.
[size=109]Ondo ibili, gutxi gastau eta bueltak amari[/size]
[size=109]Pasalo bien, gasta poco y las vueltas a tu madre[/size]

colacao

  • Miembro activo
  • **
  • Mensajes: 55
    • Ver Perfil
Re: Plantillas De Formularios
« Respuesta #9 en: Viernes 6 de Enero de 2006, 14:20 »
0
Sigue dandome el mismo error.
La verdad que nose como ponerlo.
Gracias de todas formas.
Ciaooooo