08-10-25, 02:20 PM
(آخر تعديل لهذه المشاركة : 08-10-25, 02:52 PM {2} بواسطة salamandal.)
1 - من الواضح انها دالة لتعبئة الكومبوبوكس لكن الدالة الرئيسية fillCombo غير موجودة
2- الخصائص DisplayMember و ValueMember من المفروض والافضل ان يتم تحديدها من خلال الدالة السابقة
من الممكن ان تفيدك هذه الدالة كن يجب ان تكون لديك معرفة ولو بسيطة بالبرمجة
استدعاء الدالة يكون بالشكل التالي
2- الخصائص DisplayMember و ValueMember من المفروض والافضل ان يتم تحديدها من خلال الدالة السابقة
من الممكن ان تفيدك هذه الدالة كن يجب ان تكون لديك معرفة ولو بسيطة بالبرمجة
كود :
Public Sub fillCombo( sqlQuery As String,comboBox As ComboBox, displayMember As String, valueMember As String)
If comboBox Is Nothing Then
Throw New ArgumentNullException(NameOf(comboBox))
End If
Dim dataTable As New System.Data.DataTable()
comboBox.Items.Clear()
comboBox.Text = ""
comboBox.DataSource = Nothing
Try
Using connection As OleDbConnection = GetConnection() ' نفترض أنها تعيد OleDbConnection
If connection.State <> ConnectionState.Open Then
connection.Open() ' فتح الاتصال
End If
Using cmd As OleDbCommand = connection.CreateCommand()
cmd.CommandText = sqlQuery
Using adapter As New OleDbDataAdapter(cmd)
adapter.Fill(dataTable)
End Using
End Using
End Using
comboBox.DataSource = dataTable
comboBox.DisplayMember = displayMember
comboBox.ValueMember = valueMember
If comboBox.Items.Count > 0 Then
comboBox.SelectedIndex = 0
End If
Catch ex As Exception
MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
End Try
End Subاستدعاء الدالة يكون بالشكل التالي
كود :
fillCombo("SELECT * FROM msarahin", ComboBox1 ,"msarahin" ,"MSARH_NAM")