Genesis Vargas J

Filtrar Datagridview con Textbox en Visual Basic .Net y Access (Tutorial)

Comparte:

Hola amigos, hace mucho tiempo que no publicaba aquí en el blog pero era porque tenía full trabajo. Bueno en esta ocasión les traigo un tutorial de como hacer un filtro en un datagridview con un textbox (búsqueda) en Visual Basic .NET y Access.

La idea esencial del programa es que se pueda hacer una consulta a la base de datos y filtrar el resultado en un datagridview (muy recomendado cuando nos toca hacer un listado de clientes y no se sabe exactamente los nombre o cedulas de éstos). Usaremos los namespaces: system.data y system.data.oledb, 1 textbox, 1 datagridview y un label; la interfaz del programa es sencilla y se ve así:

Filtrar Datagridview Visual Basic .NET

El código es muy sencillo y solo usaremos una función para hacer nuestro filtro:

FRMFILTRO.VB

Imports System.Data
Imports System.Data.OleDb
Public Partial Class FrmFiltro
    Public Sub New()
        Me.InitializeComponent()        
    End Sub

    Dim con As New OleDbConnection("Provider=Microsoft.ACE.OleDB.12.0; Data Source=" & Application.StartupPath & "\Cliente.accdb")

   Sub TxtClienteTextChanged(sender As Object, e As EventArgs)
        If Filtro(TxtCliente.Text).Rows.Count >0 Then
            DgvCliente.DataSource = Filtro(TxtCliente.Text)
        End If
    End Sub

   Function Filtro(ByVal busqueda As String) As DataTable
        con.Open()
        Dim dt As New DataTable
        Dim da As New OleDbDataAdapter("SELECT * FROM Cliente WHERE NombreCliente LIKE '%"& busqueda &"%'", con)
        da.Fill(dt)
        con.Close()
        return dt
    End Function

 End Class

Éste es el código completo del formulario donde claramente declaramos una variable "con" que es la que va a tener la conexión de la base de datos access, también renemos la función filtro que retorna el datatable que le vamos a asignar al datasource del datagridview donde queremos mostrar los resultado de la consulta. Podemos ver que cuando se escribe una letra en el textbox el va a verificar si el datatable de la funcion trajo datos si o no.

Al final cuando depuremos nuestro programa quedará algo parecido a esto:

Filtrar Datagridview Visual Basic .NET

Bueno eso es todo espero que les sirva mucho para aprender y practicar. Les dejo una carpeta comprimida para que descarguen el ejemplo y un video del tutorial en funcionamiento.

Comentarios


genesis vargas

Soy Genesis Vargas Jiménez, autor de éste blog. Me gusta desarrollar software en todas las plataformas (web, móvil y desktop) y compartir conocimiento para ayudar a muchas personas.

Desde el 2015 soy MVP Microsoft en Visual Studio y tecnologías de desarrollo, reconocimiento que me enorgullece mucho.

MVP Genesis Vargas J

A PHP Error was encountered

Severity: Core Warning

Message: Module 'timezonedb' already loaded

Filename: Unknown

Line Number: 0

Backtrace: