Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   ASPX (.net) (http://www.forosdelweb.com/f78/)
-   -   Problemas con TextBox (http://www.forosdelweb.com/f78/problemas-con-textbox-577075/)

AnaGaby 17/04/2008 12:27

Problemas con TextBox
 
Hola que tal, tengo el siguiente problema: creo un cuadro de texto por medio de codigo y en tiempo de ejecucion lo agrego a la pagina; es decir que no se carga cuando lo hace la pagina sino hasta que se manda llamar, ya una vez que le agrego datos lo concateno con un comando de SQL para agregar los datos a una tabla pero al momento de derl click en el boton guardar me pierde los datos y entonces graba en la tabla datos nulos. Como puedo hacer para que me mantenga los datos una vez que la pagina recarga????
Desde ya GRACIAS


Atte
AnaGaby

Peterpay 17/04/2008 12:31

Re: Problemas con TextBox
 
estas manejando los datos en controles o en variables de sesion

si es en controles verifica q tu pagina tenga
EnableViewState="true"

si es por variables de sesion pon tu codigo

AnaGaby 17/04/2008 12:41

Re: Problemas con TextBox
 
Lo manejo en controles la propiedad se la establesco a la pagina o a cada control?

Peterpay 17/04/2008 12:44

Re: Problemas con TextBox
 
a la pagina muchos controles por default vienen en true pero algunos otros como gridviews y controles de datos vienen en false. si son solo textbox solo ponselo a tu pagina

pregunta si estas trabajando con limpiar los campos en el load revisa q no se limpien cada vez si no solo la primera vez con una condiocion de IsPostBack == true

AnaGaby 17/04/2008 12:52

Re: Problemas con TextBox
 
:no: pues ya trate de las dos formas y no lo hace me sigue borrando los datos tendras otra solucion :-(

Peterpay 17/04/2008 12:57

Re: Problemas con TextBox
 
puedes poner tu codigo?

AnaGaby 17/04/2008 13:04

Re: Problemas con TextBox
 
Declaro los cuadros de texto de manera global asi:

Dim tbNombre As TextBox = New TextBox()

Despues en una funcion los agrego a la pagina, hasta que se escoge la tabla:

Me.Panel2.Controls.Add(tbNombre)

Y ahi es cuando le ingreso datos, ya despues le doy Guardar y lo concateno:

comando.CommandText = "INSERT empleados (nombre) VALUES ('" & tbNombre.Text & "')"

Pero al momento de dar click muestro el comando y lo pone así:

INSERT empleados (nombre) VALUES ('')


Atte.
AnaGaby

Peterpay 17/04/2008 13:09

Re: Problemas con TextBox
 
pregunta en q funcion estas agregando el control???

puedes poner el codigo para encontrar el error

AnaGaby 17/04/2008 13:22

Re: Problemas con TextBox
 
Es algo largo pero aqui esta:
conexion = New SqlConnection()
conexion.ConnectionString = ConfigurationManager.ConnectionStrings("DNS_Conexi on").ConnectionString
If Not Page.IsPostBack Then
comando = New SqlCommand()
comando.CommandText = "Select name from sysobjects where type='U'"
comando.CommandType = CommandType.Text
comando.Connection = conexion
comando.Connection.Open()
lector = comando.ExecuteReader()
lbTablas.DataSource = lector
lbTablas.DataTextField = "name"
lbTablas.DataBind()
lector.Close()
lector = comando.ExecuteReader()
lbTablas.DataSource = lector
lbTablas.DataTextField = "name"
lbTablas.DataBind()
lector.Close()
comando.Connection.Close()
tbNombre.EnableViewState = True
End If
Page.EnableViewState = True

Aqui le cargo a una lista las tablas que tengo entonces cuando se escoge una de ellas se llena el grid:

Sub llenaGV()
comando = New SqlCommand()
comando.CommandText = "SELECT * FROM empleados" ' & lbTablas.SelectedValue
comando.CommandType = CommandType.Text
comando.Connection = conexion
comando.Connection.Open()
lector = comando.ExecuteReader()
gvTabla.DataSource = lector
gvTabla.DataBind()
lector.Close()
comando.Dispose()
comando.Connection.Close()
End Sub

Cuando se da click en el boton nuevo genero los campos a mostrar:

Protected Sub btnNuevo_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnNuevo.Click
lblaccion.Text = 1
cuentaCampos()
muestraCampos()
End Sub

Sub cuentaCampos()
comando = New SqlCommand()
comando.CommandText = "SELECT column_name FROM information_schema.columns WHERE table_name = '" & lbTablas.SelectedValue & "'"
comando.CommandType = CommandType.Text
comando.Connection = conexion
comando.Connection.Open()
lector = comando.ExecuteReader()
listaCampos.DataSource = lector
listaCampos.DataTextField = "column_name"
listaCampos.DataBind()
lector.Close()
comando.Connection.Close()
contador = listaCampos.Items.Count
Me.Page.Form.Controls.Add(listaCampos)
Response.Write(contador)
End Sub

Sub muestraCampos()
Dim i As Integer
For i = 1 To contador - 1
etiqueta(i) = New TextBox()
etiqueta(i).Text = listaCampos.Items.Item(i).ToString
etiqueta(i).Width = 130
etiqueta(i).Height = 22
etiqueta(i).MaxLength = 1
'etiqueta(i).BorderWidth = 1
Me.Panel3.Controls.Add(etiqueta(i))
Next
camposEmpleados()
End Sub

Sub camposEmpleados()
Me.Panel2.Controls.Add(tbNombre)
End Sub

Ya despues que se muestran doy clikc en guardar:

Protected Sub btnGuardar_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnGuardar.Click
tbNombre.EnableViewState = True
comando = New SqlCommand()
comando.CommandText = "INSERT empleados (nombre,documento,fechaingreso) VALUES ('" & tbNombre.Text & "', '" & tbDocumento.Text & "', '" & tbFechaingreso.Text & "')"
lblaccion.Text = comando.CommandText
End sub

Por lo pronto no estoy guardando los datos porque solo me guarda valores nulos

Peterpay 17/04/2008 13:39

Re: Problemas con TextBox
 
1.- el view state esta habilitado en tu pagina aspx

pon tu codigo del aspx solo la cabecera

AnaGaby 17/04/2008 14:42

Re: Problemas con TextBox
 
creo que no entendi bien como solo la cabecera???

Peterpay 17/04/2008 14:45

Re: Problemas con TextBox
 
si donde esta el <%page ..... y los imports quiero ver si tiene el atributo EnableViewState=true ahi

AnaGaby 17/04/2008 14:51

Re: Problemas con TextBox
 
No no lo tiene solo tengo estos:

Imports System.Data
Imports System.Data.SqlClient
Imports System.Configuration

Es que todo esto lo hago desde aspx.vb

Atte
AnaGaby

Peterpay 17/04/2008 14:53

Re: Problemas con TextBox
 
del aspx no del aspx.vb

AnaGaby 17/04/2008 14:57

Re: Problemas con TextBox
 
<%@ Page Language="VB" AutoEventWireup="false" CodeFile="prueba1.aspx.vb" Inherits="prueba1" %>

el encabezado de la pagina

Atte
AnaGaby

Peterpay 17/04/2008 15:19

Re: Problemas con TextBox
 
ponle EnableViewState="true" como un atributo mas a tu pagina

AnaGaby 17/04/2008 15:27

Re: Problemas con TextBox
 
Creo que tendre que buscar otra manera porque ya lo intente y tampoco funciona :'(

Fann_Lavigne 17/04/2008 23:05

Re: Problemas con TextBox
 
Por ke no mandas konkatenar directamente los datos, sin pasarlos al textbox?

Javier Santamaria 18/04/2008 03:41

Re: Problemas con TextBox
 
Es un problema de viewstate. Al agregar controles dinamicos, estos no tienen un enlaze al viewstate y te toca guardar a ti los datos mano para no perderlos entre post back. Te dejo este hilo para que veas donde se guardan y donde se recuperan esos controles y sus datos

Fann_Lavigne 19/04/2008 11:43

Re: Problemas con TextBox
 
Aki hay un ejemplo, calado al 100%. http://msdn.microsoft.com/library/de...sAtRuntime.asp

AnaGaby 19/04/2008 11:54

Re: Problemas con TextBox
 
:cool: Excelente Realmente funciona al 100 :aplauso:


La zona horaria es GMT -6. Ahora son las 07:45.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.