منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
عندما اقوم بتعبئة كومبو بوكس ياخذ الكثير من الوقت .. فمالحل - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182)
+--- قسم : قسم اسئلة VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=183)
+--- الموضوع : عندما اقوم بتعبئة كومبو بوكس ياخذ الكثير من الوقت .. فمالحل (/showthread.php?tid=42638)



عندما اقوم بتعبئة كومبو بوكس ياخذ الكثير من الوقت .. فمالحل - mohamedgadain61 - 07-10-22

السلام عليكم اريد تعديل على الكود بالأسفل عندما يقوم بتعبئة كومبو بوكس من قاعدة بيانات ياخذ الكثير من الوقت علما بان التعبئة تكون ل 102الف حقل   ...  مرفق لكم المثال



Using sda As OleDbDataAdapter = New OleDbDataAdapter("Select Cust_Id, Cust_Phone FROM Customers", Con)
            Con.Open()
            'Fill the DataTable with records from Table.
            Dim dt As DataTable = New DataTable()
            sda.Fill(dt)
            'Insert the Default Item to DataTable.
            Dim row As DataRow = dt.NewRow()
            row(0) = 0
            row(1) = "Please Select"
            dt.Rows.InsertAt(row, 0)
            'Assign DataTable as DataSource.
            ComboBox1.DataSource = dt
            ComboBox1.DisplayMember = "Cust_Phone"
            ComboBox1.ValueMember = "Cust_Id"
        End Using
        Con.Close()


RE: عندما اقوم بتعبئة كومبو بوكس ياخذ الكثير من الوقت .. فمالحل - mohamedgadain61 - 08-10-22

ما من مساعدة ؟


RE: عندما اقوم بتعبئة كومبو بوكس ياخذ الكثير من الوقت .. فمالحل - Taha Okla - 08-10-22

وعليكم السلام ورحمة الله وبركاته

وما المساعدة التي ترتجيها لمثال غير منطقي
تريد تعبئة كمبو بـ أكثر من 100 ألف سجل

فما أبقيت لقاعدة البيانات من وظيفة تقوم بها ؟؟؟!!!

المنطق أن لا تقوم بتعبئة الكمبو بأي بيانات مطلقاً في حالة البيانات الكثيرة
ولكن تجعل هناك مربعات للبحث .. بعد الانتهاء من إدخال الحد الأدنى من البيانات 
تضغط على زر البحث فيقوم بجلب كل البيانات المتشابهة ..


RE: عندما اقوم بتعبئة كومبو بوكس ياخذ الكثير من الوقت .. فمالحل - mohamedgadain61 - 08-10-22

طيب اخي الفاضل ارجو توضيح حل للمشكلة الأمثل بحيث اقوم بالبحث من خلال المربعات


RE: عندما اقوم بتعبئة كومبو بوكس ياخذ الكثير من الوقت .. فمالحل - Taha Okla - 08-10-22

الحل موجود في السطر الاول من كودك 

كود :
Using sda As OleDbDataAdapter = New OleDbDataAdapter("Select Cust_Id, Cust_Phone FROM Customers Where tablXXX like '"& TextBox1.Text &"'", Con)

فالجزء الذي أضفناه  على الكود :
كود :
" Where tablXXX like '"& TextBox1.Text &"'"

تعدل فيه حسب عدد الحقول التي تريد البحث فيها وبحسب نوع الحقول رقمية أم نصية ..
(tablXXX)  اسم الحقل الذي تريد البحث فيه الجدول من قاعدة البيانات..

عندها سيقوم برنامجك  بالبحث بحسب الشروط المكتوبة مسبقاُ في مربع النص أم مربعات النصوص ان كان هناك أكثر من مربع.
مثلا مربع للاسم الاول أو الاخير - مربع لاسم المدينة أو العنوان، 
أو مربع لرقم الهاتف ان وجد إن كنت تريد الحبث عن الاسم في حال معرفة رقم الهاتف (بحيث لا يبدأ البحث إن لم يكتب كامل الرقم. كي يقلل عدد نتائج البحث)