Ver Mensaje Individual
  #7 (permalink)  
Antiguo 10/04/2008, 04:53
Avellaneda
Colaborador
 
Fecha de Ingreso: enero-2008
Ubicación: Unas veces aquí, otras veces allí
Mensajes: 1.482
Antigüedad: 16 años, 3 meses
Puntos: 37
Re: buscar en una datagrid

Cita:
Iniciado por tsunamijavip Ver Mensaje
No soy capaz de encontrar el RecordSource. Que es Data1?? tu base de datos, la rejilla?? Cual es su equivalente en Vb 2005??. El problema es que tengo una rejilla que debe mostrar los productos al seleccionar los tipos de productos en un combo (seo ya lo tengo hecho) y en la misma rejilla se deben mostrar los productos al ir escribiendo en un textbox el nombre de producto. Esto esta regulado con 2 radio buttons para seleccionar la consulta por nombre o por tipo de producto. (2 tablas diferentes==> Productos y tipos de productos)
Gracias
Data es un control de VB (anterior a .NET) que funciona como un contenedor de datos de una tabla. Su equivalencia en VB 2005 sería como el BindingSource.

Te pongo un ejemplo de cómo ir cargando un DataGridView según se escribe en un TextBox.

Código:
Imports System.Data.OleDb


Public Class Form1

    Dim oCon As New ADODB.Connection
    Dim rs As New ADODB.Recordset

    Public Sub New()

        ' This call is required by the Windows Form Designer.
        InitializeComponent()

        ' incluir referencia .COM a ADO
        Try
            oCon.Open("Provider=Microsoft.jet.oledb.4.0;data source = " & CurDir() & "\Activos2003.mdb")
            Dim sTable As String = "Pedidos"
            Dim sql As String = "Select * From " & sTable
            rs.Open(sql, oCon, ADODB.CursorTypeEnum.adOpenStatic, ADODB.LockTypeEnum.adLockOptimistic)

            Dim oDa As OleDbDataAdapter = New OleDbDataAdapter
            Dim oDs As New DataSet
            oDa.Fill(oDs, rs, sTable)
            Me.BindingSource1.DataSource = oDs.Tables(0)
            Me.DataGridView1.DataSource = Me.BindingSource1
            Me.DataGridView1.EditMode = DataGridViewEditMode.EditOnEnter

        Catch ex As Exception
            MessageBox.Show(ex.Message)
        End Try
    End Sub

    Private Sub TextBox1_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged
        Dim sTable As String = "Pedidos"
        Dim sql As String = "Select * From " & sTable & " WHERE Proveedor LIKE '" & TextBox1.Text & "%'"
        rs.Open(sql, oCon, ADODB.CursorTypeEnum.adOpenStatic, ADODB.LockTypeEnum.adLockOptimistic)

        Dim oDa As OleDbDataAdapter = New OleDbDataAdapter
        Dim oDs As New DataSet

        oDa.Fill(oDs, rs, sTable)
        BindingSource1.DataSource = oDs.Tables(0)
        DataGridView1.DataSource = BindingSource1
    End Sub
En este caso la base de datos es de Access, si estás utilizando SQL Express, sólo cambia la conexión.