Cita:
Iniciado por tsunamijavip
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.