هذه هى واجهة البرنامج
![[صورة مرفقة: 769597835.jpg]](https://www5.0zz0.com/2020/04/05/13/769597835.jpg)
كل Combobox من الأربعة السفلى يعتمد على اختيار ما قبله
ما أريده هو أنه عندما يتم اخيار Available فى Combobox المسمى Status كما بالصورة
![[صورة مرفقة: 182870544.jpg]](https://www5.0zz0.com/2020/04/05/13/182870544.jpg)
يتغير لون items فى Combobox المسمى Name والتى يكون مسجلاً أمامها Yes
فى قاعدة البيانات فى خانة Available كما بالصورة
![[صورة مرفقة: 118244816.jpg]](https://www7.0zz0.com/2020/04/05/13/118244816.jpg)
البرنامج بالمرفقات
وهذا هو كود البرنامج لمن لا يتمكن من التحميل:
![[صورة مرفقة: 769597835.jpg]](https://www5.0zz0.com/2020/04/05/13/769597835.jpg)
كل Combobox من الأربعة السفلى يعتمد على اختيار ما قبله
ما أريده هو أنه عندما يتم اخيار Available فى Combobox المسمى Status كما بالصورة
![[صورة مرفقة: 182870544.jpg]](https://www5.0zz0.com/2020/04/05/13/182870544.jpg)
يتغير لون items فى Combobox المسمى Name والتى يكون مسجلاً أمامها Yes
فى قاعدة البيانات فى خانة Available كما بالصورة
![[صورة مرفقة: 118244816.jpg]](https://www7.0zz0.com/2020/04/05/13/118244816.jpg)
البرنامج بالمرفقات
وهذا هو كود البرنامج لمن لا يتمكن من التحميل:
كود :
Imports System.Data.OleDb
Public Class Form1
Dim cnn As New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=Stock.accdb")
Dim da As OleDbDataAdapter
Dim cm As OleDbCommandBuilder
Dim cmd As OleDbCommand
Dim itemRoute As String()
Private Sub ComboType_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboType.SelectedIndexChanged
ComboName.Items.Clear()
ComboQuantity.Items.Clear()
ComboStore.Items.Clear()
If ComboType.SelectedItem = "Food" Then
Dim dt1 As New DataTable
dt1.Clear()
Dim sql As String = "SELECT * FROM Food"
da = New OleDbDataAdapter(sql, cnn)
cm = New OleDbCommandBuilder(da)
da.Fill(dt1)
For ii As Integer = 0 To dt1.Rows.Count - 1
ComboName.Items.Add(dt1(ii)(0))
Next
End If
If ComboType.SelectedItem = "Clothes" Then
Dim dt1 As New DataTable
dt1.Clear()
Dim sql As String = "SELECT * FROM Clothes"
da = New OleDbDataAdapter(sql, cnn)
cm = New OleDbCommandBuilder(da)
da.Fill(dt1)
For ii As Integer = 0 To dt1.Rows.Count - 1
ComboName.Items.Add(dt1(ii)(0))
Next
End If
End Sub
Private Sub ComboName_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboName.SelectedIndexChanged
ComboQuantity.Items.Clear()
ComboStore.Items.Clear()
If ComboType.SelectedItem = ("Food") Then
Dim dt2 As New DataTable
dt2.Clear()
Dim sql2 As String = "SELECT * FROM Food WHERE Food = '" & ComboName.SelectedItem & "'"
da = New OleDbDataAdapter(sql2, cnn)
cm = New OleDbCommandBuilder(da)
da.Fill(dt2)
Dim quants As String = dt2(0)(1)
Dim quant As String() = quants.Split("-")
For ii As Integer = 0 To quant.Count - 1
ComboQuantity.Items.Add(quant(ii))
Next
Dim stores As String = dt2(0)(2)
Dim store As String() = stores.Split("-")
itemRoute = store
End If
If ComboType.SelectedItem = ("Clothes") Then
Dim dt2 As New DataTable
dt2.Clear()
Dim sql2 As String = "SELECT * FROM Clothes WHERE Clothes = '" & ComboName.SelectedItem & "'"
da = New OleDbDataAdapter(sql2, cnn)
cm = New OleDbCommandBuilder(da)
da.Fill(dt2)
Dim quants As String = dt2(0)(1)
Dim quant As String() = quants.Split("-")
For ii As Integer = 0 To quant.Count - 1
ComboQuantity.Items.Add(quant(ii))
Next
Dim stores As String = dt2(0)(2)
Dim store As String() = stores.Split("-")
itemRoute = store
End If
End Sub
Private Sub ComboQuantity_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboQuantity.SelectedIndexChanged
ComboStore.Items.Clear()
ComboStore.Items.Add(itemRoute(ComboQuantity.SelectedIndex))
End Sub
End Class