السلام عليكم ورحمة الله وبركاتة
اخواني الافضال انا الان لدي تيكست بوكس اريد عمل Auto Complete له مع قاعده بيانات اكسس
ياريت لو تدلوني على الطريقه
مع العلم إن اسم الجدول t_factor و اسم الحقل الى اريد الاكمال منه factor_name
بالله عليكم تساعدوني لاني محتاج الحل
وشكرا لكم
السلام عليكم و رحمة الله و بركاته
إليك الكود
كود :
TextBox1.AutoCompleteMode = AutoCompleteMode.Append
TextBox1.AutoCompleteSource = AutoCompleteSource.CustomSource
For Each r as datarow In t_factor.Rows
TextBox1.AutoCompleteCustomSource.Add(r("factor_name"))
Next
تكتب هذا الكود في حدث loadForm أو في حدث GotFocus لصندوق النص
بالتوفيق إن شاء الله تعالى
السلام عليكم و رحمة الله و بركاته
(26-09-13, 11:00 PM)-تركي قرمزلي كتب : [ -> ]السلام عليكم و رحمة الله و بركاته
إليك الكود
كود :
TextBox1.AutoCompleteMode = AutoCompleteMode.Append
TextBox1.AutoCompleteSource = AutoCompleteSource.CustomSource
For Each r as datarow In t_factor.Rows
TextBox1.AutoCompleteCustomSource.Add(r("factor_name"))
Next
تكتب هذا الكود في حدث loadForm أو في حدث GotFocus لصندوق النص
بالتوفيق إن شاء الله تعالى
السلام عليكم و رحمة الله و بركاته
جزاك الله خيرا اخي الفاضل على المساعده بارك الله فك
ولكن انا اسف اعزرني فانا لازلت مبتدئ حتى الان
انا وضعت الكود الكامل بهذا الشكل
كود :
Dim saveinto2 As New OleDb.OleDbCommand
Dim constr2 As String = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source =" & Application.StartupPath & "\db.mdb"
Dim conn2 As New OleDb.OleDbConnection(constr2)
Dim DataSet12 As New DataSet
Dim SQLstr2 As String
SQLstr2 = "SELECT * From t_factor "
conn2.Open()
Dim dataadapter12 As New OleDb.OleDbDataAdapter(SQLstr2, conn2)
TextBox1.AutoCompleteMode = AutoCompleteMode.Append
TextBox1.AutoCompleteSource = AutoCompleteSource.CustomSource
For Each r As DataRow In t_factor.Rows
TextBox1.AutoCompleteCustomSource.Add(r("factor_name"))
Next
ولكن لم يعمل وظهر لي هذا الخطأ
كود :
't_factor' is not declared. It may be inaccessible due to its protection level.
ياريت بالله عليك ،، فضلاً لا أمراً تساعدني فى الكود كله لإظهار النتيجه المطلوبه
بارك الله فيك
السلام عليكم و رحمة الله و بركاته
بعد السطر
Dim dataadapter12 As New OleDb.OleDbDataAdapter(SQLstr2, conn2)
أضف السطرين التاليين
كود :
Dim t_Factor as new datatable
dataadapter12.fill(T_Factor)
بالتوفيق إن شاء الله تعالى
السلام عليكم و رحمة الله و بركاته
(27-09-13, 02:24 PM)تركي قرمزلي كتب : [ -> ]السلام عليكم و رحمة الله و بركاته
بعد السطر
Dim dataadapter12 As New OleDb.OleDbDataAdapter(SQLstr2, conn2)
أضف السطرين التاليين
كود :
Dim t_Factor as new datatable
dataadapter12.fill(T_Factor)
بالتوفيق إن شاء الله تعالى
السلام عليكم و رحمة الله و بركاته
بارك الله فيك على المساعده ,,
بعد التجربة
إختفى الخطأ السابق ,, ولكن عندما قمت بعمل عرض للبرنامج و جيت اجرب النتيجه
ظهر لي الخطأ التالي
كود :
Conversion from type 'DBNull' to type 'String' is not valid.
فى السطر التالي
كود :
TextBox1.AutoCompleteCustomSource.Add(r("factor_name"))
مع العلم أن هذا هو الكود الكامل بعد التعديل هو الاتي
كود :
Dim saveinto2 As New OleDb.OleDbCommand
Dim constr2 As String = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source =" & Application.StartupPath & "\db.mdb"
Dim conn2 As New OleDb.OleDbConnection(constr2)
Dim DataSet12 As New DataSet
Dim SQLstr2 As String
SQLstr2 = "SELECT * From t_factor "
conn2.Open()
Dim dataadapter12 As New OleDb.OleDbDataAdapter(SQLstr2, conn2)
Dim t_Factor As New DataTable
dataadapter12.Fill(t_Factor)
TextBox1.AutoCompleteMode = AutoCompleteMode.Append
TextBox1.AutoCompleteSource = AutoCompleteSource.CustomSource
For Each r As DataRow In t_factor.Rows
TextBox1.AutoCompleteCustomSource.Add(r("factor_name"))
Next
انا اسف و الله ،، انا عارف إني غلبتك وتعبتك معي انا بجد اسف

المشكلة هي وجود حقول فارغة بالعمود factor_name .. جرب استبدال السطر الذي فيه الخطأ بالسطر التالي:
كود :
If Not IsDBNull(r("factor_name")) Then TextBox1.AutoCompleteCustomSource.Add(r("factor_name"))
اعتذر لأني لم اجرب الكود ,, ولكن اظن ان هذا الكود يحل المشكلة
تحياتي
(27-09-13, 07:47 PM)Abdullah0991 كتب : [ -> ]المشكلة هي وجود حقول فارغة بالعمود factor_name .. جرب استبدال السطر الذي فيه الخطأ بالسطر التالي:
كود :
If Not IsDBNull(r("factor_name")) Then TextBox1.AutoCompleteCustomSource.Add(r("factor_name"))
اعتذر لأني لم اجرب الكود ,, ولكن اظن ان هذا الكود يحل المشكلة 
تحياتي
جزاك الله خيرا على المساعده ،، بارك الله فيك
فعلاً المشكة إتحلت بفضل الله ثم بفضلك
ولكن إستفسار بسيط ( غير مهم )
عند تجربة الكود ظهر تمام ولكن النص يتجه لليسار !
كما بالصوره
[
attachment=193]
هل توجد طريقة لجعله يذهب لليمين ؟ حتى يكون افضل شكلاً ؟
تأكد ان textbox خاصيته مضبوطة بهذا الشكل: TextAlign=Left و RightToLeft=True
مع اني اتوقع ان مشكلتك تتعلق بلغة النظام فقد يكون السبب ان لغة النظام لديك اجنبية
(28-09-13, 04:18 PM)Abdullah0991 كتب : [ -> ]تأكد ان textbox خاصيته مضبوطة بهذا الشكل: TextAlign=Left و RightToLeft=True
مع اني اتوقع ان مشكلتك تتعلق بلغة النظام فقد يكون السبب ان لغة النظام لديك اجنبية
بارك الله فيك اخي الفاضل على اهتمامك لطلبي
تم التأكد من الإعدادات ولم تحل
ولكن يبدو انها فعلاً من النظام نفسه
عموماً ،، لا تتعب نفسك الموضوع مش مهم اوي بالنسبالي حاليا
يكفي إنك حليت لي المشكلة الكبرى
ربنا يجزيك كل خير يارب