السلام عليكــم ورحمـة الله وبركاتــه
اخواني لديا داتا قريد DatagridView
فيها 2 كمبو بكس
الكمبو الاول فية مجموعة الاصناف CboItemName
الكمبو التانى فية وحدات القياس CboUnits
تضهر لى رسالة عندما انشء سطر جديد فى الداتا جريد
واليكم المثال (الكود) محاولاتي مرفقة لكم احبائي مع قاعدة البيانات Accesss
Imports System.Data.OleDb
Public Class Form1
Public ConToDb As New OleDbConnection
Public Str As String
Public SqlStatment As String
Public ds As New DataSet
Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
SetDBConnString()
'----------------------------------------
SqlStatment = ""
SqlStatment = "Select ItemID,ItemName From Items Where ItemState=" & True
Dim sda As New OleDbDataAdapter(SqlStatment, ConToDb)
Dim ds As New DataSet()
sda.Fill(ds)
CboItemName.DataSource = ds.Tables(0)
CboItemName.DisplayMember = "ItemName"
CboItemName.ValueMember = "ItemID"
End Sub
Public Sub SetDBConnString()
Try
Str = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\db.mdb;Persist Security Info=True"
ConToDb.ConnectionString = Str
Catch ex As OleDb.OleDbException
MsgBox(ex.Message)
End Try
End Sub
Private Sub DGV_CellClick(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DGV.CellClick
Try
SqlStatment = "SELECT Units.UnitName FROM (Items INNER JOIN ItemsUnits ON Items.ItemID = ItemsUnits.ItemID) INNER JOIN Units ON ItemsUnits.UnitID = Units.UnitID Where Items.ItemID=" & DGV(0, e.RowIndex).Value
SqlStatment = ""
Dim sda As New OleDbDataAdapter(SqlStatment, ConToDb)
Dim ds As New DataSet()
sda.Fill(ds)
CboItemName.DataSource = ds.Tables(0)
CboItemName.DisplayMember = "ItemName"
CboItemName.ValueMember = "ItemID"
Catch ex As OleDb.OleDbException
MsgBox(ex.Message)
End Try
End Sub
End Class