منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
[VB.NET] عرض بيانات الدتا جريد فيو - نسخة قابلة للطباعة

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



عرض بيانات الدتا جريد فيو - عبدالرحمن بشري عمر - 20-08-18

شباب السلام عليكم ورحمة الله عند مشكلة لم ابحث في الداتا جريد فيو بتظهر بيانات جدول اخر

Sub nnms()


        If con.State = ConnectionState.Closed Then
            con.Open()
        End If

        da = New OleDbDataAdapter(" SELECT * FROM purh ", con)
        Dim dt As New DataTable
        da.Fill(dt)
        con.Close()


        Me.Dgvp.DataSource = dt

    End Sub


RE: عرض بيانات الدتا جريد فيو - elgokr - 20-08-18

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

هل تعتقد اخى الحبيب اننا هنا كا الكمبيوتر نرا ما لديك  Big Grin
اين الكود الذى تستخدمه او قم بارفاق المشروع لديك حتى يتم الاطلاع ومعرفة السبب

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

ركز هنا فى الشرح حتى توضح لك كيف الاستخدام لان لا اعلم ما الطريقة المستخدمة لديك
لنقول انك تستخدم ترحيل الاستعلام من خلال DT وهى اختصار DataTable

وليكن ان كود الترحيل عبارة عن كمثال
كود :
Dapt.Fill(DT)

من ثم قمت بترحيل الـ DT الى التى
كود :
DataGridView1.DataSource = DT

الى هنا لو كانت هذه الطريقة المستخدمة

قم بعمل Textbox و زر خاص بالبحث / فلتر وضع الكود التالى بداخله
كود :
       Dim dv As DataView
       dv = New DataView(DT, "type = '" & TextBox1.Text & "' ", "type Desc", DataViewRowState.CurrentRows)
       DataGridView1.DataSource = dv

كل ما عليك التعديل على التالى
PHP كود :
type '" & TextBox1.Text & "' 

اى اسم العمود المطلوب البحث به و القيمة الخاصة بالبحث
يمكنك ان تجعلها بهذا الشكل
كود :
"type Like '%" & TextBox1.Text & "%'"

بحيث البحث يكون حرفي وليس تطابق كلى

والتعديل الثاني وهو 
PHP كود :
type Desc 

فقط قم بتغيير كلمة type الى اسم العمود الذى قمت بالبحث به 
أو يمكنك جعل الاسم لاسم ID خاص الترقيم او التسلسل

طيب الطريقة الثانية اذا كنت تتعامل من خلال DS وهى اختصار لـ DataSet
كل ما عليك تطبيق كود زر البحث بالتالى
كود :
       Dim dv As DataView
       dv = New DataView(ds.Tables(0), "type = '" & TextBox1.Text & "' ", "type Desc", DataViewRowState.CurrentRows)
       DataGridView1.DataSource = dv

ويبقى عليك تطبيق الشرح بالتعديل كما سبق

اتمنى الصورة وضحت لك وان الطريقة ابسط من ما تقوم عليه من البحث 
عن طريق الاستعلام من جديد فى قاعدة البيانات وتحيل الاستعلام الى الداتا جريد

تذكر بان تكون كلاً من DS أو DT لا يتم عمل لها تفريغ مسبق او انه رحت لها قيم استعلام اخري

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