منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
الشرط في datatable - نسخة قابلة للطباعة

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



الشرط في datatable - dasktop - 30-06-19

مرحبا

انا لدي مشروع ويحتوي على اداة datatable


ويحتوي على 4 اعمدة


وكتبت شرط اذا كان في العمود الثاني رقم يختلف عن 55 او 66  يضهر رسالة فقط

وكتبت الشرط التالي

كود :
     If (dsResult.rows.count > 2 )= "55""66" then
        MessageBox.Show("yas")
end if  





وحاولت اكتب كود مشابه للشرط في الديتا جريد




كود :
       If dgResults.Item(2, dgResults.VisibleRowCount) = 443 Then

           MessageBox.Show("yas")

       End If



ولم ينجح ماهي المشكلة


RE: الشرط في datatable - ابراهيم ايبو - 01-07-19

السلام عليكم اخي الكريم
اليك هذا الكود الذي سيقوم بالتحقق من العمود الثالث   (index 2) في الصف الذي نقف عليه اذا كانت القيمة 50 سيظهر رسالة ok



كود :
 If DataGridView1.CurrentRow.Cells(2).Value = 50 Then
           MsgBox("ok")
       End If
اما لكل الصفوف فسنحتاج الى جملة For


RE: الشرط في datatable - dasktop - 01-07-19

ضهر الخطا التالي

Error 'CurrentRow' is not a member of 'System.Data.DataTable'.


RE: الشرط في datatable - ابراهيم ايبو - 01-07-19

السلام عليكم اخي الكريم 
الخطأ مصدره ان الكود الذي كتبته لك ليس للداتا تابل بل للداتا غرايد مثلما طلبت انتبه لتوظيفه في المكان الصحيح
واليك الكود في مثال



RE: الشرط في datatable - dasktop - 03-07-19

لم ينجح الكود اخي

وهاذا مثال للمشروع

https://www.upload.ee/download/10166626/2044b4cf1cd415a2c81b/vb.zip


RE: الشرط في datatable - سعود - 03-07-19

حسب المثال اكتب هذا الكود
PHP كود :
For As Integer 0 To DataGridView1.Rows.Count IIf(DataGridView1.AllowUserToAddRows21)
 
           If DataGridView1.Rows(i).Cells(2).Value <> "55" And DataGridView1.Rows(i).Cells(2).Value <> "66" Then
                DataGridView1
.Rows(i).DefaultCellStyle.BackColor Color.GreenYellow
            Else
                DataGridView1
.Rows(i).DefaultCellStyle.BackColor DefaultBackColor

            End 
If
 
       Next 
يلون الصف في حال عدم وجود قيمة 55 او 66.
عدل على الكود ليناسب المطلوب بشكله النهائي.


RE: الشرط في datatable - elgokr - 05-07-19

تفضل كود المشروع كاملاً طبقاً لما هو مرفق بردك
كود :
Public Class Form1
   Private dt As DataTable

   Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
       dt = New DataTable
       dt.Columns.Add("الاسم", GetType(String))
       dt.Columns.Add("الرقم", GetType(String))

       Dim myrow As DataRow = dt.NewRow

       myrow("الاسم") = "الاسم"
       myrow("الرقم") = 66
       dt.Rows.Add(myrow)
       Button1.PerformClick()
       Button1.Hide()

   End Sub


   Private Sub Button1_Click_1(sender As Object, e As EventArgs) Handles Button1.Click

       DataGridView1.DataSource = dt

   End Sub

   Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
       For i As Integer = 0 To DataGridView1.Rows.Count - IIf(DataGridView1.AllowUserToAddRows, 2, 1)
           If DataGridView1.Rows(i).Cells(1).Value = 55 Or DataGridView1.Rows(i).Cells(1).Value = 66 Then
               MsgBox("yes")
           Else
               MsgBox("No")
           End If
       Next
   End Sub
End Class

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