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

Filtro en gridview c#

Estas en el tema de Filtro en gridview c# en el foro de ASPX (.net) en Foros del Web. Saludos señores, tengo el siguiente problema dentro de mi aplicación web. Tengo una aplicación web que extrae información de una base de datos en SQL ...
  #1 (permalink)  
Antiguo 25/11/2011, 10:27
Avatar de Blasphemophagher  
Fecha de Ingreso: noviembre-2011
Mensajes: 2
Antigüedad: 12 años, 5 meses
Puntos: 0
Pregunta Filtro en gridview c#

Saludos señores, tengo el siguiente problema dentro de mi aplicación web. Tengo una aplicación web que extrae información de una base de datos en SQL SERVER, la tabla pasa al DataTable, luego éste se la entrega al GRIDVIEW. Todo bien al momento de listar, pero necesito implementar un buscador/filtro el cuál me permita, ingresando cualquier palabra, letras, etc.; encontrar las filas que contengan lo que se ingresó en cualquiera de sus campos, pintarlas o simplemente mostrando las que coinciden en algo con la búsqueda.

He estado con esto ya tres días investigando, consultando pero hasta el momento no he tenido solución alguna, he intentando con el evento ROWDATABOUND aunque según sugerencias es mejor hacerlo diréctamente desde el evento click de mi botón BUSCAR.

La estructura es:
- Se ingresa un texto en un texbox, luego click en un botón llamado "buscar". Lo ideal es que desde el evento click de éste botón se realice la búsqueda, lo más simple posible.

Actualmente tengo lo siguiente, creo que busca, pero no pinta nada :s
Cualquier ayuda será bienvenida, de antemano gracias.

PD: c# solamente, y soy novato...

Código:
 //____________________________________________________________________
        //----------------- FUNCION BUSCADOR /FILTRO POR CARACTER------------
        protected void btn_IngFormSearch_Click(object sender, EventArgs e)
        {
            foreach (GridViewRow row in gv_ListarCalibres.Rows)
            {
                for (int i = 1; i <= 11; i++)
                {
                    TextBox txt = row.FindControl(string.Format("TextBox{0}", i)) as TextBox;
                        if ((txt != null) && (txt.Text == txt_IngFormBuscador.Text))
                        {
                            row.BackColor = System.Drawing.Color.Red;
                            gv_ListarCalibres.DataBind();
                        }
                }

            }
        }
  #2 (permalink)  
Antiguo 25/11/2011, 13:33
Avatar de Cantasken  
Fecha de Ingreso: junio-2011
Ubicación: Ate vitarte
Mensajes: 10
Antigüedad: 12 años, 10 meses
Puntos: 2
Respuesta: Filtro en gridview c#

Intente este codigo en tu boton buscar

//creamos una nueva conexion
SqlConnection miconn = new SqlConnection("Data Source=(local);Initial Catalog=(nombre_base_datos);Integrated Security=True");

//creamos un nuevo comando
SqlCommand micomm = new SqlCommand("select * from (nombre _de_tabla) where (campo_a_buscar) like '" + TextBox1.Text + "%" + "'", miconn);

//abrimos la conexion
miconn.Open();

//le asignamos la conexion
GridView1.DataSource = micomm.ExecuteReader();
GridView1.DataBind();


Nota:
-------
si el valor a buscar vas ingresar en otro textbox tonces lo cambias de textbox1 al textbox que ingresaras el dato a buscar
  #3 (permalink)  
Antiguo 28/11/2011, 07:25
Avatar de Blasphemophagher  
Fecha de Ingreso: noviembre-2011
Mensajes: 2
Antigüedad: 12 años, 5 meses
Puntos: 0
Respuesta: Filtro en gridview c#

Gracias, efectivamente funciona, pero me dice que "el origen de datos no acepta paginación". Si deshabilito la paginación desde migridview funciona, pero no es la idea.

¿Además cómo podría pintar las filas seleccionadas luego de la búsqueda?
Gracias por la ayuda,

Etiquetas: gridview, sql, textbox, filtros
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 03:18.