تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[سؤال] كيف اقوم بعمل فلتر DataGridView مرسل لها البيانات من فورم اخري
#1
السلام عليكم
اقوم بتنفيذ الاستعلام علي فورم وارسل النتائج الي فورم اخر
كيف يمكنني ان اقوم بعمل فلتر للمعروض فقط امامي
استخدمت هذا الكود للاخ سعود بس ماادرس ليش يظهر لي خطا عند حفظ سطر ال DataGridView
   Me.DataGridView1.Rows®.Visible = False

كود :
Private Sub TextBox1_KeyDown(sender As Object, e As KeyEventArgs) Handles TextBox1.KeyDown
       If e.KeyData = Keys.Enter Then
           If TextBox1.Text.Trim = "" Then
               gd()
           Else
               For r As Integer = 0 To Me.DataGridView1.Rows.Count - IIf(DataGridView1.AllowUserToAddRows, 2, 1)
                   If Not (Me.DataGridView1.Rows(r).Cells(0).Value.ToString = TextBox1.Text) Then
                       Me.DataGridView1.Rows(r).Visible = False
                   Else
                       Me.DataGridView1.Rows(r).Visible = True
                   End If
               Next
           End If
       End If
   End Sub
الرد }}}
تم الشكر بواسطة:
#2
السلام عليكم و رحمة الله 
اتمنى ان يكون هذا هو المطلوب 
PHP كود :
   Private Sub TextBox1_KeyDown(sender As ObjectAs KeyEventArgsHandles TextBox1.KeyDown
        If e
.KeyData Keys.Enter Then
            If TextBox1
.Text.Trim "" Then
                gd
()
 
           Else
                For r 
As Integer 0 To Me.DataGridView1.Rows.Count IIf(DataGridView1.AllowUserToAddRows21)
 
                   If Not (Me.DataGridView1.Rows(r).Cells(0).Value.ToString.Contains(TextBox1.Text)) Then
                        Me
.DataGridView1.Rows(r).Visible False
                    Else
                        Me
.DataGridView1.Rows(r).Visible True
                    End 
If
 
               Next
            End 
If
 
       End If
 
   End Sub 
الرد }}}
#3
اضافة لما قدمه اخي Amir_alzubidy

جرب تعديل الكود الخاص بك
لتعديل على جزؤ For لتجعله كما يلى

كود :
           For r As Integer = 0 To DataGridView1.Rows.Count - 1
               If DataGridView1.Rows(r).Cells(0).Value = TextBox1.Text Then
                   DataGridView1.Rows(r).Visible = True
               Else
                   DataGridView1.Rows(r).Visible = False
               End If
           Next

تحياتى لك
وتمنياتى لك لاتوفيق
{ وَقُل رَّبِّ زِدْنِي عِلْمًا }
[ كن على يقين من اعمالنا نخطئ ومن اخطائنا نتعلم ولذلك لا شي مستحيل ]

ساهم دائماً فى    لكل من يقوم بالمساهمة
فى حل المشكلة او الاستفسار لديك فالجميع هنا يعمل 
على مساعدة الاخرين لوجه الله وان تحتسب له اجر عند الله


 شرح كيفية عمل قاعدة بيانات تعمل على اكثر من جهاز على الشبكة الداخلية
الرد }}}
#4
اخي الفاضل  Amir_alzubidy
جزاك الله خيرا
أخي الفاضل  (El Jokr)
جزاك الله خيرا
لم يعمل اي من الكودين شي حسب طلبي ربما لم استطيع ان اوضح طلبي جيدا 
انا لدي داتا جريد مربوطه بالفعل بقاعده بيانات ولكنها بفورم اخر فورم فقط يظهر  لاظهار نتائج اللاستعلامات
واريد ان اعطر للمستخدم ايضا امكانيه فرز للمعروض فقط امامه  في هذا الفورم هل فهمتم علي ؟
الرد }}}
تم الشكر بواسطة: Amir_Alzubidy
#5
الكود الذى وضعته فى المشاركة بداية الموضوع
هو كود يقوم بعمل بحث داخل الفورم وليس خارجه

وانت تريد ارسال نتائح البحث الى فورم اخر


فبدلاً ما اطرح عليك بعض الاسئلة لتوضح تويعة كل فورم
والفور الذى يقوم بالتنفيذ ثم ارساله الى الفورم الاخر

ارفق اى مثال بمشروع مصغر
حتى يتم توضيح ما لديك وكتابة الكود حسب المسميات

تحياتى لك
{ وَقُل رَّبِّ زِدْنِي عِلْمًا }
[ كن على يقين من اعمالنا نخطئ ومن اخطائنا نتعلم ولذلك لا شي مستحيل ]

ساهم دائماً فى    لكل من يقوم بالمساهمة
فى حل المشكلة او الاستفسار لديك فالجميع هنا يعمل 
على مساعدة الاخرين لوجه الله وان تحتسب له اجر عند الله


 شرح كيفية عمل قاعدة بيانات تعمل على اكثر من جهاز على الشبكة الداخلية
الرد }}}
تم الشكر بواسطة: Amir_Alzubidy
#6
تفضل اخي في الملف بالظبط ما اريده
اقوم اولا بنقل البيانات لفورم FORM3 وبعد ذلك اريد عمل فرز لا يعمل الكود
اريد ان يبحث عن القيمه التي يكتبها في تيكست بوكس وتمسح جميع الاسطر التى لا تحتوي علي الشي المكتوب


الملفات المرفقة
.rar   EX.rar (الحجم : 89.53 ك ب / التحميلات : 43)
الرد }}}
تم الشكر بواسطة:
#7
(09-07-18, 03:42 AM)dametucorazon كتب : تفضل اخي في الملف بالظبط ما اريده
اقوم اولا بنقل البيانات لفورم FORM3 وبعد ذلك اريد عمل فرز لا يعمل الكود
اريد ان يبحث عن القيمه التي يكتبها في تيكست بوكس وتمسح جميع الاسطر التى لا تحتوي علي الشي المكتوب


جميل...
بنائاً على ما فهمته من السورس المرفق

ما رايك تقوم بالتعديلات التالية..
تعال فى الفورم الرئيسي Form2

وقم باضافة التالى
كود :
Form3.dt = dt

اسفل 
كود :
Form3.DataGridView1.DataSource = dt

وتعال فى الفورم الاخر Form3
واضيف التالى 
كود :
Public Shared dt As DataTable

اسفل 
كود :
Public Class Form3

ثم اجعل كود (TextBox1_KeyDown) على هذا الشكل
كود :
       If e.KeyData = Keys.Enter Then
           If Not IsNumeric(TextBox1.Text) Then
               dt.DefaultView.RowFilter = "tn Like '%" & TextBox1.Text & "%'"
           Else
               dt.DefaultView.RowFilter = "n = " & TextBox1.Text
           End If
       End If

وبهذا الكود علتك تقدر تعمل فرز بالاسم و عن طريق الرقم 
بمعنى لو كتبت 10 او 20 ستجد انه يعمل فرز
أو اذا كتبت حرف أو اسم كاملاً ستجد انه بيعمل فرز لعمود الاسماء

وستجد ان نتائج الفرز تتم على الفورم Form3 وكذلك Form2
بحيث انه عند اغلاق Form3 ستجد Form2 على وضع الفرز

ويمكنك اضافة لمسة جميلة وهو التالى
فى الفورم Form2 فى سطر كود فتح Form3
استبدله بالتالى
كود :
               Form3.Show()
               Me.Hide()

وتعال على الفورم Form3
واضع زر او كما تريد مكان استخدام الكود وضع التالى
كود :
       Form2.Show()
       Me.Close()

تحياتى لك
وتمنياتى لك التوفيق
{ وَقُل رَّبِّ زِدْنِي عِلْمًا }
[ كن على يقين من اعمالنا نخطئ ومن اخطائنا نتعلم ولذلك لا شي مستحيل ]

ساهم دائماً فى    لكل من يقوم بالمساهمة
فى حل المشكلة او الاستفسار لديك فالجميع هنا يعمل 
على مساعدة الاخرين لوجه الله وان تحتسب له اجر عند الله


 شرح كيفية عمل قاعدة بيانات تعمل على اكثر من جهاز على الشبكة الداخلية
الرد }}}
تم الشكر بواسطة:
#8
(09-07-18, 02:35 PM)elgokr كتب :
(09-07-18, 03:42 AM)dametucorazon كتب : تفضل اخي في الملف بالظبط ما اريده
اقوم اولا بنقل البيانات لفورم FORM3 وبعد ذلك اريد عمل فرز لا يعمل الكود
اريد ان يبحث عن القيمه التي يكتبها في تيكست بوكس وتمسح جميع الاسطر التى لا تحتوي علي الشي المكتوب


جميل...
بنائاً على ما فهمته من السورس المرفق

ما رايك تقوم بالتعديلات التالية..
تعال فى الفورم الرئيسي Form2

وقم باضافة التالى
كود :
Form3.dt = dt

اسفل 
كود :
Form3.DataGridView1.DataSource = dt

وتعال فى الفورم الاخر Form3
واضيف التالى 
كود :
Public Shared dt As DataTable

اسفل 
كود :
Public Class Form3

ثم اجعل كود (TextBox1_KeyDown) على هذا الشكل
كود :
       If e.KeyData = Keys.Enter Then
           If Not IsNumeric(TextBox1.Text) Then
               dt.DefaultView.RowFilter = "tn Like '%" & TextBox1.Text & "%'"
           Else
               dt.DefaultView.RowFilter = "n = " & TextBox1.Text
           End If
       End If

وبهذا الكود علتك تقدر تعمل فرز بالاسم و عن طريق الرقم 
بمعنى لو كتبت 10 او 20 ستجد انه يعمل فرز
أو اذا كتبت حرف أو اسم كاملاً ستجد انه بيعمل فرز لعمود الاسماء

وستجد ان نتائج الفرز تتم على الفورم Form3 وكذلك Form2
بحيث انه عند اغلاق Form3 ستجد Form2 على وضع الفرز

ويمكنك اضافة لمسة جميلة وهو التالى
فى الفورم Form2 فى سطر كود فتح Form3
استبدله بالتالى
كود :
               Form3.Show()
               Me.Hide()

وتعال على الفورم Form3
واضع زر او كما تريد مكان استخدام الكود وضع التالى
كود :
       Form2.Show()
       Me.Close()

تحياتى لك
وتمنياتى لك التوفيق

شكرا لك اخي الفاضل نعم الان يعمل  شكرا لك
ولكن اريد ان يقوم بالفرز من كل الاعمده بمجرد ان اكتب حرف فقد اضفت عمود جديد لقاعدة البيانات اريده ان يبحث بكل الاعمده وليس بدلاله عمود واحد
فالكود يبحث بدلاله الاسم اريد ان يتم البحث في كل الاعمده عند كتابه اول حرف
الكود يبحث الاسم بمجرد كتابه الحرف نعم يفرز اما الرقم لابد ان اكتبه جيد
انا اريد اذا كتبت جزء من اسم او جزء من رقم تظهر النتائج ويتم البحث في كل الاعمده
جربت الكود التالي ولكن لا يبحث الا بالاسم فقط

كود :
       If e.KeyData = Keys.Enter Then
           If Not IsNumeric(TextBox1.Text) Then
               dt.DefaultView.RowFilter = "tn,mo,ms,mm,mn Like '%" & TextBox1.Text & "%'"
           Else
               dt.DefaultView.RowFilter = "n = " & TextBox1.Text
           End If
       End If
جزاك الله خيرا
الرد }}}
تم الشكر بواسطة:
#9
يبدو ان فى خلل فى الردود
عند اضافة رد تحتوى على اكواد او اكود محددة

على العموم قمت بوضع الكود بعد التعديل
طبقاً للمسميات الذى تم كتابتها من قبلك للاعمدة

السورس بعد تعديل الكود بالمرفقات

تحياتى لك


الملفات المرفقة
.zip   HiCome.zip (الحجم : 94.46 ك ب / التحميلات : 57)
{ وَقُل رَّبِّ زِدْنِي عِلْمًا }
[ كن على يقين من اعمالنا نخطئ ومن اخطائنا نتعلم ولذلك لا شي مستحيل ]

ساهم دائماً فى    لكل من يقوم بالمساهمة
فى حل المشكلة او الاستفسار لديك فالجميع هنا يعمل 
على مساعدة الاخرين لوجه الله وان تحتسب له اجر عند الله


 شرح كيفية عمل قاعدة بيانات تعمل على اكثر من جهاز على الشبكة الداخلية
الرد }}}
تم الشكر بواسطة:
#10
جزاك الله خيرا لكن يظهر خطا ولا يتم تنفيذ الكود حضرتك جربته ؟
الرد }}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  تعديل بيانات عمود DataGridView دفعة واحدة مصمم هاوي 2 164 05-03-24, 08:27 PM
آخر رد: مصمم هاوي
  [VB.NET] حل مشكلة الاتصال بقواعد البيانات access loay775 2 158 25-02-24, 06:29 AM
آخر رد: loay775
  كيفية تنفيذ أمر عرض بيانات من فورم ثان مصمم هاوي 7 329 19-02-24, 12:28 AM
آخر رد: مصمم هاوي
  سؤال عن عملية حذف سجل من قاعدة البيانات assuhimi 3 249 11-02-24, 08:43 PM
آخر رد: assuhimi
  فلترة datagridview بدون قاعدة بيانات صالح عبدالله 3 295 02-02-24, 04:07 PM
آخر رد: صالح عبدالله
  [VB.NET] ظهور التاريخ غير مرتب بالأقدم في datagridview مبرمج صغير 1 4 304 26-01-24, 03:41 PM
آخر رد: atefkhalf2004
  [VB.NET] التاريخ في أداة أبو سامر لطباعة DataGridView مبرمج صغير 1 17 629 26-01-24, 01:52 AM
آخر رد: مبرمج صغير 1
  [VB.NET] منع تكرار البيانات في عند الادخال مبرمج صغير 1 2 255 24-01-24, 05:18 PM
آخر رد: مبرمج صغير 1
  [VB.NET] مساعدة في استدعاء البيانات معينه من form الأول إلى form 2 بدون التعديل loay775 2 275 18-01-24, 05:04 PM
آخر رد: loay775
  مشكلة في datagridview Adata 4 310 17-01-24, 03:00 PM
آخر رد: aljzazy

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم