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

busqueda por combobox y textbox

Estas en el tema de busqueda por combobox y textbox en el foro de .NET en Foros del Web. hola lo que intento hacer es una busqueda en la cual el usuario elija de un combox (buscar por) clave usuario nombre... si elige clave ...
  #1 (permalink)  
Antiguo 12/10/2012, 13:01
 
Fecha de Ingreso: agosto-2012
Mensajes: 19
Antigüedad: 11 años, 8 meses
Puntos: 0
busqueda por combobox y textbox

hola
lo que intento hacer es una busqueda en la cual el usuario elija de un combox (buscar por)
clave usuario
nombre...

si elige clave que busque por clave... y al introducir el texto en el textbox que la busqueda sea por clave...
si elige por nombre =

hasta el momento logré hacerlo con
if...

if (buscar.Equals("Clave de usuario"))
{
String sql = "select * from usuario where "+ var1 + " like " + " +'%"+ busqueda +"%';";

DataTable tabla = BD.select(sql);
grilla.DataSource = tabla;

}

else if (buscar.Equals("Nombre"))
{
String sql = "select * from usuario where Nombre like '%" + busqueda + "%';";
DataTable tabla = BD.select(sql);
grilla.DataSource = tabla;
}

el problema que es mucho repetir código...

hay manera de hacerlo igualando un item del combo con un campo dela bd????


para solo poner una instruccion como :

select * from categoria where" +combo+ "like '%" + busqueda + "%';";

o algo así???'
Les agradeceré su ayuda
  #2 (permalink)  
Antiguo 12/10/2012, 13:29
Avatar de Aquaventus  
Fecha de Ingreso: junio-2010
Ubicación: Lima-Peru , En el alba de la naturaleza
Mensajes: 2.105
Antigüedad: 13 años, 10 meses
Puntos: 267
Respuesta: busqueda por combobox y textbox

Hola chivanet_meza porqué no creas un método que reciba la tabla y la búsqueda y que retorne un DataTable y se lo pasas directamente a tu grilla? :
Código C:
Ver original
  1. public DataTable Retorna_Data(string opcion,string texto)
  2. {
  3. //....
  4. String sql = "select * from usuario where "+ opcion + " like '%" + texto + "%';";
  5. DataTable tabla = BD.select(sql);
  6. return tabla;
  7. }
lo llamas :
Código C:
Ver original
  1. grilla.DataSource = Retorna_Data("opcion","texto");
Saludos!.
__________________
Internet es tener todo el conocimiento global a tu disposición.
Desarrollo de Software - Ejemplos .Net
  #3 (permalink)  
Antiguo 12/10/2012, 20:11
 
Fecha de Ingreso: agosto-2012
Mensajes: 19
Antigüedad: 11 años, 8 meses
Puntos: 0
Respuesta: busqueda por combobox y textbox

gracias! :) esa una muy buena idea!
Aunque aun si quiero aprender a realizar una búsqueda con un combo y caja de texto,
me podrías ayudar con eso por favor?

como digo que un item de mi combo sea igual a un campo en mi BD
  #4 (permalink)  
Antiguo 13/10/2012, 06:55
Avatar de Aquaventus  
Fecha de Ingreso: junio-2010
Ubicación: Lima-Peru , En el alba de la naturaleza
Mensajes: 2.105
Antigüedad: 13 años, 10 meses
Puntos: 267
Respuesta: busqueda por combobox y textbox

Como puedes hacer? Simplemente en tu como listas los campos de la bd, en internet puedes buscar esa info de sql, aunque recuerda que al usuario no se le va a mostrar los campos tal como esta en tu tabla, por ejemplo id,nom_cli,pat_cli.. Saludos! .

PDT: Te adjunto como listar las columnas de una tabla
Código SQL:
Ver original
  1. SELECT SC.NAME
  2. FROM sysobjects SO INNER JOIN syscolumns SC
  3. ON SO.ID = SC.ID
  4. WHERE SO.name = 'TU_TABLA'
__________________
Internet es tener todo el conocimiento global a tu disposición.
Desarrollo de Software - Ejemplos .Net

Última edición por Aquaventus; 13/10/2012 a las 07:18
  #5 (permalink)  
Antiguo 15/10/2012, 15:40
 
Fecha de Ingreso: agosto-2012
Mensajes: 19
Antigüedad: 11 años, 8 meses
Puntos: 0
Respuesta: busqueda por combobox y textbox

muchas gracias por tus respuestas... pude solucionarlo así :)

public static void buscar(FrmUsuarios frm, DataGridView grilla, string busqueda, ToolStripComboBox cmb)
{
int index = cmb.SelectedIndex;
if (index > -1)
{
String buscar = frm.CmbBuscarPor.Text.Trim();

String[] campos = { "Id_Usuario", "Nombre" };
string var1 = campos[cmb.SelectedIndex]; // "Id_Usuario";

String sql = "select * from usuario where " + var1 + " like " + " +'%" + busqueda + "%';";

DataTable tabla = BD.select(sql);
grilla.DataSource = tabla;
grilla.Refresh(); // refresca los datos en la grilla para ver la tabla
}
else
{
MessageBox.Show("Selecciona un criterio de búsqueda");
}

}
  #6 (permalink)  
Antiguo 15/10/2012, 15:46
Avatar de Aquaventus  
Fecha de Ingreso: junio-2010
Ubicación: Lima-Peru , En el alba de la naturaleza
Mensajes: 2.105
Antigüedad: 13 años, 10 meses
Puntos: 267
Respuesta: busqueda por combobox y textbox

De nada chivanet_meza. Cualquier otro problema que tengas no dudes en comentarlo por el Foro!!. Saludos!.
__________________
Internet es tener todo el conocimiento global a tu disposición.
Desarrollo de Software - Ejemplos .Net

Etiquetas: c#
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 13:37.