22-07-17, 01:19 AM
(آخر تعديل لهذه المشاركة : 22-07-17, 01:20 AM {2} بواسطة waelalmsry75.)
(21-07-17, 08:55 PM)سعود كتب : جرب المثال التالي:
انظر لجملة الاستعلام وانظر قبلها لعبارةكود :
Public Class Form1
Dim con As New OleDb.OleDbConnection("provider=microsoft.ace.oledb.12.0;data source=|datadirectory|\db.accdb")
Private Sub TextBox1_TextChanged(sender As Object, e As EventArgs) Handles TextBox1.TextChanged
If con.State = ConnectionState.Closed Then con.Open()
Dim dt As DataTable
For Each h As String In TextBox1.Text.Split(" ")
Using da = New OleDb.OleDbDataAdapter("select * from tb where tname like'%" & h & "%'", con)
dt = New DataTable
da.Fill(dt)
ListBox1.DataSource = dt
ListBox1.DisplayMember = "tname"
End Using
Next
End Sub
End Class
كود :
For each h in textbox1.text.split(" ")
جملة الاستعلام ونتيجة For في هذا الكود هي التي تحدد النتيجة.
سلمت أخي سعود
هذا الكود يمكننا من البحث الجزئي عن بعض الكلمات
لكن فيه مشكلة يسيرة
وهي عندما أكتب كلمة يتم البحث عنها، وهذا جيد
فإذا عملت مسافة لأكتب كلمة أخرى يتم إعادة تحميل البيانات كلها في داتا جريد فيو، وهذا ما لا نريده
وجزاكم الله خيرا
