Foros del Web » Programación para mayores de 30 ;) » .NET »

pregunta de textbox

Estas en el tema de pregunta de textbox en el foro de .NET en Foros del Web. hola gente!! una pregunta. Tengo un textbox donde el usuario va metiendo el texto que quiere buscar. Yo con ese texto voy a la base ...
  #1 (permalink)  
Antiguo 16/01/2007, 10:21
 
Fecha de Ingreso: enero-2007
Mensajes: 31
Antigüedad: 17 años, 10 meses
Puntos: 0
pregunta de textbox

hola gente!!
una pregunta.
Tengo un textbox donde el usuario va metiendo el texto que quiere buscar. Yo con ese texto voy a la base de datos y hago un like para que me de todo lo que se parece al texto.
Pero hay que darle a return o a un boton para que te haga la busqueda.
No hay alguna forma para que mientras el usuario va introduciendo letras en el textbox en el textbox vaya apareciendo la palabra que mas se aproxima??
(pero sin darle a return ni nada, solo escribiendo que vaya apareciendo)

no se si me habeis entendido
por ejemplo , si meto en el textbox (asa) ==>> casa
pero si borro la a (as)==>> mas

y todo que lo haga mientras el usuario va escribiendo en el campo letras
  #2 (permalink)  
Antiguo 16/01/2007, 10:56
Avatar de erick_arcini  
Fecha de Ingreso: julio-2005
Ubicación: Jaltenco / DF
Mensajes: 1.723
Antigüedad: 19 años, 4 meses
Puntos: 50
Re: pregunta de textbox

puedes llenar un dataset, el cual va a tener todos tus registros y de ahi puedes empezar a buscar por letra, ya que si lo que quieres es que cada que escribas vas a la base de datos tu programa no va a rendir.
__________________
Mejoremos nuestro país, ayudemos al planeta... próximamente.
  #3 (permalink)  
Antiguo 17/01/2007, 03:20
 
Fecha de Ingreso: enero-2007
Mensajes: 31
Antigüedad: 17 años, 10 meses
Puntos: 0
Re: pregunta de textbox

hola.
y como hago para que cada vez que escriba una letra o borre una letra vaya a la base de datos??
  #4 (permalink)  
Antiguo 17/01/2007, 04:27
Avatar de chikiya  
Fecha de Ingreso: mayo-2006
Mensajes: 46
Antigüedad: 18 años, 6 meses
Puntos: 0
Re: pregunta de textbox

con el evento onchange
__________________

La belleza verdadera es la de las almas buenas
  #5 (permalink)  
Antiguo 17/01/2007, 04:56
Avatar de freegirl
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: Catalonia
Mensajes: 4.334
Antigüedad: 21 años, 1 mes
Puntos: 156
Re: pregunta de textbox

con el evento "TextChanged"

saludos
  #6 (permalink)  
Antiguo 17/01/2007, 11:01
 
Fecha de Ingreso: enero-2007
Mensajes: 31
Antigüedad: 17 años, 10 meses
Puntos: 0
Re: pregunta de textbox

ya pero yo quiero que vaya escribiendo en el textbox las palabras que se contienen las letras que está escribiendo el usuario, pero que lo vaya escribiendo mientras el usuario escriba una letra o borra una letra.
Pero con text_changed no hace nada hasta que el usuario no le da a la tecla return o intro. Como hago para que haga cuando el usuario vaya escribiendo letras, no cuando le da a intro o return ??

yo he puesto en el textchanged:

CargarDatos(TextBox1.Text) <<<==== asi carga la primera palabra que contenga las letras que el usuario ha introducido.
Pero el programa no llama a este metodo hasta que el usuario no de al return o al intro, como hago para que lo llame cuando el usuario va escribiendo o borrando letras??
  #7 (permalink)  
Antiguo 17/01/2007, 11:32
Avatar de freegirl
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: Catalonia
Mensajes: 4.334
Antigüedad: 21 años, 1 mes
Puntos: 156
Re: pregunta de textbox

como que no?

Al menos a mi funciona sin tener que pulsar ni enter ni otra tecla. O sea a medida que el usuario va escribiendo, va llamando al procedimiento a través del evento en cuestión

pon el código.


saludos
  #8 (permalink)  
Antiguo 17/01/2007, 13:12
 
Fecha de Ingreso: enero-2007
Mensajes: 31
Antigüedad: 17 años, 10 meses
Puntos: 0
Re: pregunta de textbox

TextChanged()
{
TextBox.Text=DatosIguales(Textbox.Text).Rows[0]["Dato"].toString();
}

hay que hacerle algun cambio en las propiedades del textbox???
porque sino no entiendo, yo le tengo que dar a enter o a intro para que llame a esa funcion
  #9 (permalink)  
Antiguo 17/01/2007, 13:39
Avatar de freegirl
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: Catalonia
Mensajes: 4.334
Antigüedad: 21 años, 1 mes
Puntos: 156
Re: pregunta de textbox

dentro del evento "textChanged" del textbox debes llamar el procedimiento.

Por ejemplo si el procedimiento para la búsqueda se llama: "buscarRegistros":

Cita:
Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As _
System.EventArgs) Handles TextBox1.TextChanged

buscarRegistros()

End Sub
Yo lo tengo así más o menos, y me funciona correctamente.

saludos
  #10 (permalink)  
Antiguo 17/01/2007, 13:40
Avatar de erick_arcini  
Fecha de Ingreso: julio-2005
Ubicación: Jaltenco / DF
Mensajes: 1.723
Antigüedad: 19 años, 4 meses
Puntos: 50
Re: pregunta de textbox

sino te resulta prueba colocando tu codigo en el evento keydown
__________________
Mejoremos nuestro país, ayudemos al planeta... próximamente.
  #11 (permalink)  
Antiguo 18/01/2007, 01:58
 
Fecha de Ingreso: diciembre-2006
Mensajes: 43
Antigüedad: 17 años, 11 meses
Puntos: 0
Re: pregunta de textbox

y como hago con el evento keydown??
joe, estoy desesperado!!
  #12 (permalink)  
Antiguo 18/01/2007, 03:25
 
Fecha de Ingreso: diciembre-2006
Mensajes: 43
Antigüedad: 17 años, 11 meses
Puntos: 0
Re: pregunta de textbox

yo tambien estoy pensando hacer eso, pero a mi tampoco no me funciona!!!
  #13 (permalink)  
Antiguo 18/01/2007, 06:02
 
Fecha de Ingreso: enero-2007
Mensajes: 31
Antigüedad: 17 años, 10 meses
Puntos: 0
Re: pregunta de textbox

se que soy un poco pesado, pero he estado toda la mañana haciendo pruebas y no lo entiendo . Has cambiado alguna propiedad en el textbox o en el proyecto??
  #14 (permalink)  
Antiguo 18/01/2007, 06:13
Avatar de freegirl
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: Catalonia
Mensajes: 4.334
Antigüedad: 21 años, 1 mes
Puntos: 156
Re: pregunta de textbox

No te funciona? Supongo que estamos hablando de la versión 2003, no? Utilizo vb.net 2003 y funciona.

Puedes poner el código entero del procedimiento y del evento del textbox?

saludos
  #15 (permalink)  
Antiguo 18/01/2007, 06:18
Avatar de freegirl
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: Catalonia
Mensajes: 4.334
Antigüedad: 21 años, 1 mes
Puntos: 156
Re: pregunta de textbox

Te copio exacto de como tengo el evento en un proyecto:

Cita:
Private Sub txtBusc_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtBusc.TextChanged

busqueda()

End Sub

Sub busqueda()
'aqui va el código para buscar las coincidencias

End Sub
  #16 (permalink)  
Antiguo 18/01/2007, 06:32
 
Fecha de Ingreso: enero-2007
Mensajes: 31
Antigüedad: 17 años, 10 meses
Puntos: 0
Re: pregunta de textbox

no, yo utilizo visual studio 2005 con c#.
Pero supongo que todos los visual studio lo podran hacer esto no?
  #17 (permalink)  
Antiguo 18/01/2007, 09:35
Avatar de freegirl
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: Catalonia
Mensajes: 4.334
Antigüedad: 21 años, 1 mes
Puntos: 156
Re: pregunta de textbox

Ah ok. Pues ahí puede estar el problema, porque a lo mejor se hace distinto. Ya que yo hablaba de VB y versión 2003.

saluds
  #18 (permalink)  
Antiguo 18/01/2007, 11:18
Avatar de erick_arcini  
Fecha de Ingreso: julio-2005
Ubicación: Jaltenco / DF
Mensajes: 1.723
Antigüedad: 19 años, 4 meses
Puntos: 50
Re: pregunta de textbox

para entrar al evento keydown, en el cuadro de propiedades de tu control en modo de diseño, hay un icono en forma de rayo (son los eventos :P) busca el que diga keydown y dale doble clic y automaticamente se te crea en el codigo la funcion del evento.

sino sale asi, en el load de la aplicacion has esto

Código:
this.TuTextbox.Keydown += new...
cuando coloques el += presionas la tecla de espacio y te va a mostrar un mensaje, cuando lo muestre creo que tienes que presionar la telca tab y despues otra vez enter para que te cree la funcion.
__________________
Mejoremos nuestro país, ayudemos al planeta... próximamente.
  #19 (permalink)  
Antiguo 18/01/2007, 15:15
 
Fecha de Ingreso: enero-2007
Mensajes: 31
Antigüedad: 17 años, 10 meses
Puntos: 0
Re: pregunta de textbox

lo primero, gracias por responder.

he intentado lo que me dices, pero tengo problemas.

lo primero, el textbox en los eventos no aparece el keydown.
y lo segundo, he probado con el load y he hecho this.TextBox1 y le doy al punto y no aparece el Keydown, asi que no existe .

Seguro que es asi el codigo??de todas formas, gracias por echarme una mano.
  #20 (permalink)  
Antiguo 18/01/2007, 16:59
Avatar de erick_arcini  
Fecha de Ingreso: julio-2005
Ubicación: Jaltenco / DF
Mensajes: 1.723
Antigüedad: 19 años, 4 meses
Puntos: 50
Re: pregunta de textbox

Cita:
Iniciado por Jony25 Ver Mensaje
lo primero, gracias por responder.

he intentado lo que me dices, pero tengo problemas.

lo primero, el textbox en los eventos no aparece el keydown.
y lo segundo, he probado con el load y he hecho this.TextBox1 y le doy al punto y no aparece el Keydown, asi que no existe .

Seguro que es asi el codigo??de todas formas, gracias por echarme una mano.
La verdad no me gusta dar asi mis comentarios pero, ahora si me desquicie "asi que no existe" como es posible que siendo programador digas tales cosas, caray hombre, hay que investigar mas de como se usan los eventos en C# o usa las faq's ahi hay informacion de eso, pero bueno, haber si una imagen valen mas que mil palabras

asi funciona en el 2003 y 2005 asi que busquele, sino presione F1 para que lo ayude el asistonto de visual
__________________
Mejoremos nuestro país, ayudemos al planeta... próximamente.
  #21 (permalink)  
Antiguo 22/01/2007, 06:28
 
Fecha de Ingreso: enero-2007
Mensajes: 31
Antigüedad: 17 años, 10 meses
Puntos: 0
Re: pregunta de textbox

hola!siento mucho si te enfadaste, no era mi intencion.

he intentado lo de +=new EventHandler(Metodo);
pero no me hace nada.

tambien he buscado lo de keydown por internet pero no encuentro nada que me valga, yo utilizo visula studio 2005.

no se que hacer, me puedes ayudar??
  #22 (permalink)  
Antiguo 22/01/2007, 09:27
Avatar de freegirl
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: Catalonia
Mensajes: 4.334
Antigüedad: 21 años, 1 mes
Puntos: 156
Re: pregunta de textbox

selecciona la caja de texto y haces doble click en ella. que evento te sale?

saludos
  #23 (permalink)  
Antiguo 22/01/2007, 09:27
Avatar de erick_arcini  
Fecha de Ingreso: julio-2005
Ubicación: Jaltenco / DF
Mensajes: 1.723
Antigüedad: 19 años, 4 meses
Puntos: 50
Re: pregunta de textbox

Cita:
Iniciado por Jony25 Ver Mensaje
hola!siento mucho si te enfadaste, no era mi intencion.

he intentado lo de +=new EventHandler(Metodo);
pero no me hace nada.

tambien he buscado lo de keydown por internet pero no encuentro nada que me valga, yo utilizo visula studio 2005.

no se que hacer, me puedes ayudar??

en el cs de tu form en el form load colocas esta linea:

this.tutextbox.KeyDown += new System.EventHandler(TUEVENTO);

y este es el evento en keydown
private void TUEVENTO(object sender, EventArgs e)
{
.
.
.
}

y si no te queda, pues dedicate mas primero a entender como se usa el visual studio y despues preocupate por hacer tu programa
__________________
Mejoremos nuestro país, ayudemos al planeta... próximamente.
  #24 (permalink)  
Antiguo 23/01/2007, 06:48
 
Fecha de Ingreso: enero-2007
Mensajes: 31
Antigüedad: 17 años, 10 meses
Puntos: 0
Re: pregunta de textbox

eske ya lo he intentado, pero mi textbox no tiene evento de keydown, (o no lo encuentro). Hay que hacer alguna referencia ?
  #25 (permalink)  
Antiguo 23/01/2007, 07:34
 
Fecha de Ingreso: enero-2007
Mensajes: 31
Antigüedad: 17 años, 10 meses
Puntos: 0
Re: pregunta de textbox

la cuestion es que en en textbox de un form(windows application) si hay ese evento, el keydown,y ya se que funciona bien, pero mi programa es un web site (.aspx), y el textbox que tiene el toolbar no tiene las mismas propiedades del windows application, no tiene el evento keydown. que puedo hacer ??
  #26 (permalink)  
Antiguo 23/01/2007, 09:03
Avatar de erick_arcini  
Fecha de Ingreso: julio-2005
Ubicación: Jaltenco / DF
Mensajes: 1.723
Antigüedad: 19 años, 4 meses
Puntos: 50
Re: pregunta de textbox

bueno, si hubieras especificado desde un principio que era una aplicacion web no hubieramos tenido tanta confusion.

Ahora bien si lo que deseas hacer es ese tipo de busquedas tu aplicacion va a tener que refrescarse cada que presiones una letra, lo cual no va a ser tan funcional, en este caso, el keydown se especifica por medio de los atributos del control o por medio del html, en estos dos casos tendrias que ocupar javascript ya que este funciona en forma de cliente y no tendrias que estar llamando al servidor

<asp:tucontrol onkeydown="funcionjavascript();">
__________________
Mejoremos nuestro país, ayudemos al planeta... próximamente.
  #27 (permalink)  
Antiguo 24/01/2007, 04:38
 
Fecha de Ingreso: enero-2007
Mensajes: 31
Antigüedad: 17 años, 10 meses
Puntos: 0
Re: pregunta de textbox

lo primero, gracias por tu paciencia. Es verdad, tenia que haberlo especificado, porque ha habido confusión con ello.

entonces, tu dices que se puede hacer una funcion javascript para que no se refresque una y otra vez la pagina??
bale, entonces en en la funcion javascript pondria:

function CargarDatos()
Response.Write("<script>");
Response.Write("CargarTextBox(TextBox.Text)");

algo asi??
  #28 (permalink)  
Antiguo 24/01/2007, 09:13
Avatar de erick_arcini  
Fecha de Ingreso: julio-2005
Ubicación: Jaltenco / DF
Mensajes: 1.723
Antigüedad: 19 años, 4 meses
Puntos: 50
Re: pregunta de textbox

haber si te funciona este ejemplo

http://www.desarrolloweb.com/articulos/1015.php
__________________
Mejoremos nuestro país, ayudemos al planeta... próximamente.
  #29 (permalink)  
Antiguo 25/01/2007, 02:10
 
Fecha de Ingreso: enero-2007
Mensajes: 31
Antigüedad: 17 años, 10 meses
Puntos: 0
Re: pregunta de textbox

hola!
le pongo el codigo en el textbgox, lo ejecuto y no me deja escribir en el textbox, no me hace nada.
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 22:16.