Re: Evitar Letras En Textbox
Pues es muy sencillo.
Imagina un gridview o cualquier otro control que muestra el contenido de una tabla.
Ahora imagina un textbox en el que quieres escribir y que según vayas escribiendo se vaya filtrando.
Por abreviar pensemos en una conexión activa.
sub textbox_change
Dim Rs as result
if textbox.text then ---> que haga esto si en el textbox hay algo
Rs=Cn.exec("select * from tabla where campo like '" & textbox.text & "%' order by lo_que_sea")
else
Rs=Cn.exec("select * from tabla order by lo_que_sea")
endif
LlenarGrid(Rs) ---> procedimiento que llena el gridview
end sub
Ese evento tal como está puesto filtra todo aquello que EMPIECE POR lo que has escrito en el textbos. También podemos hacer que en vez de EMPEZAR POR filtre los registros que CONTENGAN lo que has escrito.
sub textbox_change
Dim Rs as result
if textbox then ---> que haga esto si en el textbox hay algo
Rs=Cn.exec("select * from tabla where campo like '%" & textbox.text & "%' order by lo_que_sea")
else
Rs=Cn.exec("select * from tabla order by lo_que_sea")
endif
LlenarGrid(Rs) ---> procedimiento que llena el gridview
end sub
En este caso según tu vas escribiendo algo en el textbos se van filtrando en el gridview los registros cuyo campo contiene lo que has escrito.
En mysql el % es un comodín para varios caracteres. No se cual es en sqlite quizá sea el mismo o no, pero en cualquier caso se entiende lo que digo.
Otra posibilidad que funciona igual es la propiedad filter del datasource por ejemplo.
Otro caso que te propongo
El caso anterior no es una buena solución cuando hay muchos registros porque tarda en generar el result (es cuestión de probar), pero lo que si es eficiente es en vez de generar result nuevos buscar en una tabla.
Osea que tu tienes un grid con un montón de datos y tienes un textbox y cuando escribes algo te busca y se posiciona en el primer registro que cumple esa condición. Yo suelo poner un botón adicional que es para buscar siguiente y lo que hace es buscar el siguiente registro que cumpla esa misma condición.