Foros del Web » Programando para Internet » ASPX (.net) »

Al cargar Web Forms, se inicializan las variables.

Estas en el tema de Al cargar Web Forms, se inicializan las variables. en el foro de ASPX (.net) en Foros del Web. Buen día, En el siguientes les planteo un problemita que tengo con mis variables, ya que al ejecutar un botón que tengo que tener obligatorio ...
  #1 (permalink)  
Antiguo 13/11/2009, 13:24
 
Fecha de Ingreso: noviembre-2003
Ubicación: Cúa
Mensajes: 109
Antigüedad: 20 años, 5 meses
Puntos: 0
Exclamación Al cargar Web Forms, se inicializan las variables.

Buen día,

En el siguientes les planteo un problemita que tengo con mis variables, ya que al ejecutar un botón que tengo que tener obligatorio con autoPostBack, el cual induce que se recargue la pagina y hace que se inicialicen mis variables.

Incluso la variable la cree en el load con el siguiente codigo, el cual no le cveo mucha logica, esto lo hice por consejo de un tercero con el fin de que solo se recargue una sola vez, pero más bien me genera otros errores


If Not Page.IsPostBack Then
public ejecutar as string
Else

Espero que pronto me ayuden a solventar este problemita, el cual se quede debe ser super sencillo pero por mi falta de esperiencia no lo logro visualizar facilmente.
__________________
gracias por su ayuda
  #2 (permalink)  
Antiguo 13/11/2009, 13:39
Avatar de eperedo  
Fecha de Ingreso: septiembre-2009
Ubicación: Perú
Mensajes: 654
Antigüedad: 14 años, 7 meses
Puntos: 16
Respuesta: Al cargar Web Forms, se inicializan las variables.

A ver si entendí, quieres una variable al que le pasas un valor en el Load y quieres consumirla en un evento Click por ejemplo?

Yo nunca he podido manejar las variables frente a un PostBack, se me ocurren 2 opciones, la primera es declarar esa variable como Public Shared ejecutar As String en una clase y consumirla desde tu webform.

La otra es usar un control hiddenfield y darle el valor en el load
Código vb.net:
Ver original
  1. 'Esto es para que le asigne ese valor sólo la primera vez que se carga la pag.
  2. If Not Page.IsPostBack Then
  3.     HiddenField.value = "mi_valor"
  4. End If

Luego en el evento click del botón lo recuperas
Código vb.net:
Ver original
  1. Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
  2. Response.Write(HiddenField.value)
  3. End Sub

Espero sea lo que buscas, saludos
__________________
Eduardo Peredo
Wigoin
  #3 (permalink)  
Antiguo 13/11/2009, 13:46
 
Fecha de Ingreso: noviembre-2003
Ubicación: Cúa
Mensajes: 109
Antigüedad: 20 años, 5 meses
Puntos: 0
Respuesta: Al cargar Web Forms, se inicializan las variables.

Bueno no es precisamente lo que quiero.

Yo al opromir un botón estoy guardando un valor en una variable, y posteriormente al oprimir otro botón deseo que me haga una validación canturando el valor de la variable que se le asigno previamente el valor.

Más en ese momento no ejecuta la acción que deseo porque indica que la variable es "Nothing"
__________________
gracias por su ayuda
  #4 (permalink)  
Antiguo 13/11/2009, 13:55
Avatar de eperedo  
Fecha de Ingreso: septiembre-2009
Ubicación: Perú
Mensajes: 654
Antigüedad: 14 años, 7 meses
Puntos: 16
Respuesta: Al cargar Web Forms, se inicializan las variables.

Bueno en ese caso sólo bastaría con cambiar el evento Load por un evento Click
Código vb.net:
Ver original
  1. Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
  2.         Me.HiddenField1.Value = "Hola fdw"
  3. End Sub
  4.  
  5. Protected Sub Button2_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button2.Click
  6.         Response.Write(Me.HiddenField1.Value)
  7. End Sub

Saludos
__________________
Eduardo Peredo
Wigoin
  #5 (permalink)  
Antiguo 13/11/2009, 14:05
 
Fecha de Ingreso: noviembre-2003
Ubicación: Cúa
Mensajes: 109
Antigüedad: 20 años, 5 meses
Puntos: 0
Respuesta: Al cargar Web Forms, se inicializan las variables.

Bueno el punto es que el botón ya tiene el evento click, al referirme que se carga la pagina es por la propiedad AutoPostBack que tiene el botón.

Y por favor explicame como funciona el HiddenField, para poder entender lo que me estas enviando.
__________________
gracias por su ayuda
  #6 (permalink)  
Antiguo 13/11/2009, 14:21
Avatar de eperedo  
Fecha de Ingreso: septiembre-2009
Ubicación: Perú
Mensajes: 654
Antigüedad: 14 años, 7 meses
Puntos: 16
Respuesta: Al cargar Web Forms, se inicializan las variables.

Cita:
Yo al opromir un botón estoy guardando un valor en una variable, y posteriormente al oprimir otro botón deseo que me haga una validación canturando el valor de la variable que se le asigno previamente el valor.
Yo con esto entendí, que en el evento click de Button1 por ejemplo guardo un valor en una variable llamada ejecutar supongamos.
Código vb.net:
Ver original
  1. Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
  2.    ejecutar = "Foros del web"
  3. End Sub
Luego en el evento click de Button2 hacemos una comparación según el valor de la variable ejecutar
Código vb.net:
Ver original
  1. Protected Sub Button2_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button2.Click
  2.  
  3.     if  ejecutar = "Foros del web" then
  4.            Response.Write("Se cumplió la validación")
  5.     else
  6.            Response.Write("No se cumplió la validación")
  7.     End if
  8.     End Sub

Cita:
Bueno el punto es que el botón ya tiene el evento click, al referirme que se carga la pagina es por la propiedad AutoPostBack que tiene el botón.
No entendí bien que quisite decir con esto.

HiddenField es un control que renderiza en un input oculto al momento de cargarse la página, o sea un textbox pero que el usuario no visualiza con la posibilidad de mantener el valor que le asignemos ante un postback.
__________________
Eduardo Peredo
Wigoin
  #7 (permalink)  
Antiguo 16/11/2009, 02:29
danicuco
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Al cargar Web Forms, se inicializan las variables.

Cita:
Iniciado por jose daniel Ver Mensaje
Buen día,

En el siguientes les planteo un problemita que tengo con mis variables, ya que al ejecutar un botón que tengo que tener obligatorio con autoPostBack, el cual induce que se recargue la pagina y hace que se inicialicen mis variables.

Incluso la variable la cree en el load con el siguiente codigo, el cual no le cveo mucha logica, esto lo hice por consejo de un tercero con el fin de que solo se recargue una sola vez, pero más bien me genera otros errores


If Not Page.IsPostBack Then
public ejecutar as string
Else

Espero que pronto me ayuden a solventar este problemita, el cual se quede debe ser super sencillo pero por mi falta de esperiencia no lo logro visualizar facilmente.
Igual no estoy entendiendo bien, pero recuerda que entre las idas y venidas de la accion postback tienes que indicarle al servidor que guarde aquello que luego vas a necesitar, es decir si yo lanzo un evento que inicializa unas variables y luego en otro evento voy hacer uso de ellas tengo que indicarselo al servidor... parace lógico verdad?
Una de las soluciones es como te indica "eperedo" (HiddenField) que realmente lo que estas indicadole es que guarde el valor en un campo oculto de la estructura HTML...

Yo usaria otro tipo de variable u objetos como viewstate() o la session()...
A groso modo el viewstate() para variables que usaré a nivel de página y en session() aquellas que necesitaré en cualquier parte de la aplicacion... luego existen otros tipo pero para lo que necesitas creo que con esto te valdria...

Bueno espero que te solucione el problema.

danicuco,
  #8 (permalink)  
Antiguo 16/11/2009, 07:42
Avatar de eperedo  
Fecha de Ingreso: septiembre-2009
Ubicación: Perú
Mensajes: 654
Antigüedad: 14 años, 7 meses
Puntos: 16
Respuesta: Al cargar Web Forms, se inicializan las variables.

Si usa viewstate también quedaría en el html y no le recomendé Session porque según lo que indica parece que sólo lo usará para esa página en particular.

__________________
Eduardo Peredo
Wigoin
  #9 (permalink)  
Antiguo 13/12/2009, 16:28
danicuco
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Al cargar Web Forms, se inicializan las variables.

Cita:
Iniciado por eperedo Ver Mensaje
Si usa viewstate también quedaría en el html y no le recomendé Session porque según lo que indica parece que sólo lo usará para esa página en particular.



jajaj llevas toda la razon peredo... mea culpa
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:34.