(14-04-23, 03:08 AM)new_programer كتب : السلام عليكم
مرفق مثال بسيط
محتاج تعبئة الكمبو بوكس داخل الداتا جريد من جدول الوحدات
وعند اختيار الوحدة يجلب قيمة التعادل لها او قيمة عدد الوحدة فى عمود التعادل
مرفق مثال مع سكربت الجدول
بحثت كتير وحاولت لكن جميع الاكواد والامثلة لا تفي بالغرض
كود :
Dim dtUint As New DataTable
Private Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs) Handles MyBase.Load
Dim sda As New SqlDataAdapter("SELECT * FROM Uint_NameTbl", conn)
sda.Fill(dtUint)
With TryCast(dvg_UintPrice.Columns(0), DataGridViewComboBoxColumn)
.DataSource = dtUint
.DisplayMember = "UintName"
.ValueMember = "id"
End With
End Sub
Private Sub dvg_UintPrice_CellEndEdit(sender As Object, e As DataGridViewCellEventArgs) Handles dvg_UintPrice.CellEndEdit
If e.ColumnIndex = 0 Then
Dim UintID = dvg_UintPrice.Item(0, e.RowIndex).Value
If Not IsNothing(UintID) Then
Dim v = dtUint.Rows.Cast(Of DataRow).Where(Function(r) r("id") = UintID).First
dvg_UintPrice.Item(1, e.RowIndex).Value = v("UintQty").ToString
End If
End If
End Sub
Private Sub dvg_UintPrice_CurrentCellDirtyStateChanged(sender As Object, e As EventArgs) Handles dvg_UintPrice.CurrentCellDirtyStateChanged
If dvg_UintPrice.IsCurrentCellDirty Then dvg_UintPrice.CommitEdit(DataGridViewDataErrorContexts.Commit)
End Sub
Private Sub dvg_UintPrice_CellValueChanged(sender As Object, e As DataGridViewCellEventArgs) Handles dvg_UintPrice.CellValueChanged
If e.ColumnIndex = 0 AndAlso Not IsNothing(dvg_UintPrice.CurrentCell) Then
dvg_UintPrice.CurrentCell = dvg_UintPrice.CurrentRow.Cells(2)
dvg_UintPrice.BeginEdit(True)
End If
End Sub