منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : استفسار عن كود تلوين صف معين بناءًا على تحقق شرط بخلية في الداتاجريدفيو
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
بسم الله الرحمن الرحيم
--------------------------

إخواني الكرام أود تلوين صف كامل في الداتا جريدفيو باللون الأحمر، عندما تكون القيمة Null في العمود الثالث 

حاولت استخدام هذا الكود ولكن لم يكن صحيحا، فما الحل بارك الله فيكم:

PHP كود :
Public Sub color_Exp()
 
       For i As Integer 0 To Me.DataGridView1.Rows.Count 1
            If Me
.DataGridView1.Rows(i).Cells("Exp").Value "null" Then
                Me
.DataGridView1.Rows(i).Cells("Exp").Style.BackColor Color.Red

            End 
If
 
       Next
    End Sub 
كود :
If isnothing(Me.DataGridView1.Rows(i).Cells("Exp").Value) Then
(10-12-18, 12:00 PM)rmnr كتب : [ -> ]
كود :
If isnothing(Me.DataGridView1.Rows(i).Cells("Exp").Value) Then

جزاك الله خيراً أخي على مجهودك ولكن الكود لم يعمل، القيمة هي : Null أقوم بكتابة حروفها بيدي يعني مثلاً لو أن قيمة عمر الطلاب 22 - 23 - 24 سنة، فأنا أردت أن يقوم بتحديد كل الصفوف التي تحتوي على الخلايا التي تشمل 22 فقط ويجعلها باللون الأحمر مثلاً.
حاول تستخدم هذا الكود
كود :
Private Sub redpepole()
       On Error Resume Next
       Dim ss As Integer
       For i = 0 To DataGridView1.Rows.Count - 1



           ss = DataGridView1.Rows(i).Cells("Exp").Value.ToString


           If ss = "null" Then

           DataGridView1.Rows(i).DefaultCellStyle.BackColor = Color.Red

           Else



           End If
       Next




 

   End Sub
(10-12-18, 10:54 AM)Hazem1 كتب : [ -> ]بسم الله الرحمن الرحيم
--------------------------

إخواني الكرام أود تلوين صف كامل في الداتا جريدفيو باللون الأحمر، عندما تكون القيمة Null في العمود الثالث 

حاولت استخدام هذا الكود ولكن لم يكن صحيحا، فما الحل بارك الله فيكم:

PHP كود :
Public Sub color_Exp()
 
       For i As Integer 0 To Me.DataGridView1.Rows.Count 1
            If Me
.DataGridView1.Rows(i).Cells("Exp").Value "null" Then
                Me
.DataGridView1.Rows(i).Cells("Exp").Style.BackColor Color.Red

            End 
If
 
       Next
    End Sub 

اخي Hazem1 كودك صحيح ضعه  في الحدث المناسب form_load مثلا
اخي حازم السلام عليكم
جربت الكود في حدث  form_load وهو شغال تماما وهذه صورة من البرنامج والكود 
كود :
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
       FillData()
       Prd.Dgv_EnglishHeader(dgv_table)
       '===============
       For i As Integer = 0 To Me.dgv_table.Rows.Count - 1
           If Me.dgv_table.Rows(i).Cells("adress").Value = "null" Then
               Me.dgv_table.Rows(i).Cells("adress").Style.BackColor = Color.Red

           End If
       Next
       '===================
   End Sub
(12-12-18, 04:48 PM)ابراهيم ايبو كتب : [ -> ]اخي حازم السلام عليكم
جربت الكود في حدث  form_load وهو شغال تماما وهذه صورة من البرنامج والكود 
كود :
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
       FillData()
       Prd.Dgv_EnglishHeader(dgv_table)
       '===============
       For i As Integer = 0 To Me.dgv_table.Rows.Count - 1
           If Me.dgv_table.Rows(i).Cells("adress").Value = "null" Then
               Me.dgv_table.Rows(i).Cells("adress").Style.BackColor = Color.Red

           End If
       Next
       '===================
   End Sub

جزاك الله خيراً أخي الحبيب ابراهيم ايبو، كان الخطأ مني في وضع اسم العمود فلابد من وضع اسم العمود المذكور في جدول الداتاجريدفيو

لي استفسار يسير : هل يُمكن تلوين الصف كله بدلاً من الخلية الواحدة؟
السلام عليكم اخي حازم

لاأعرف كود خاص بتلوبن الصف بأكمله ولكن هناك دائما حلول

فلو افترضنا انك تريد الذهاب الى المدينة وانت في قرية ولايوجد سيارة تستقلها فهل تلغي الذهاب؟ بالطبع لا سوف تستخدم اي وسيلة ركوب حتى ولو كانت 

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

كود مختصر في اوقات لاحقة وقد قمت بكتابة الكود على النحو التالي وانظر كم عمود عندك في الداتا غرايد واعمل تلوبن لكل خلية بنفس الصف لكل عمود.. المهم ان تصل الى غايتك وهذا منهج في التفكبر البرمجي اتمنى ان تسير فيه فهو سيجعل تفكيرك اوسع دمت بخير


كود :
    For i As Integer = 0 To Me.dgv_table.Rows.Count - 1
           If Me.dgv_table.Rows(i).Cells("adress").Value = "homs" Then
               Me.dgv_table.Rows(i).Cells("adress").Style.BackColor = Color.Red
               Me.dgv_table.Rows(i).Cells(0).Style.BackColor = Color.Red
               Me.dgv_table.Rows(i).Cells(1).Style.BackColor = Color.Red
               Me.dgv_table.Rows(i).Cells(2).Style.BackColor = Color.Red
               Me.dgv_table.Rows(i).Cells(3).Style.BackColor = Color.Red

           End If
       Next


وهذه صورة لتحديد الصف
(12-12-18, 07:54 PM)ابراهيم ايبو كتب : [ -> ]
السلام عليكم اخي حازم

لاأعرف كود خاص بتلوبن الصف بأكمله ولكن هناك دائما حلول

فلو افترضنا انك تريد الذهاب الى المدينة وانت في قرية ولايوجد سيارة تستقلها فهل تلغي الذهاب؟ بالطبع لا سوف تستخدم اي وسيلة ركوب حتى ولو كانت 

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

كود مختصر في اوقات لاحقة وقد قمت بكتابة الكود على النحو التالي وانظر كم عمود عندك في الداتا غرايد واعمل تلوبن لكل خلية بنفس الصف لكل عمود.. المهم ان تصل الى غايتك وهذا منهج في التفكبر البرمجي اتمنى ان تسير فيه فهو سيجعل تفكيرك اوسع دمت بخير


كود :
    For i As Integer = 0 To Me.dgv_table.Rows.Count - 1
           If Me.dgv_table.Rows(i).Cells("adress").Value = "homs" Then
               Me.dgv_table.Rows(i).Cells("adress").Style.BackColor = Color.Red
               Me.dgv_table.Rows(i).Cells(0).Style.BackColor = Color.Red
               Me.dgv_table.Rows(i).Cells(1).Style.BackColor = Color.Red
               Me.dgv_table.Rows(i).Cells(2).Style.BackColor = Color.Red
               Me.dgv_table.Rows(i).Cells(3).Style.BackColor = Color.Red

           End If
       Next


وهذه صورة لتحديد الصف

جزاك الله خيراً أخي الحبيب [b][b]ابراهيم ايبو[/b]، نصيحتك طيبة طيَّب الله بكل خير، الكود أصبح يعمل بشكل سليم، سلمك الله من كل سوء وأكرمك بالجنة.[/b]
كود :
   Private Sub DataGridView1_CellFormatting(sender As Object, e As DataGridViewCellFormattingEventArgs) Handles DataGridView1.CellFormatting
       If DataGridView1.Columns(e.ColumnIndex).Name = "Exp" AndAlso IsDBNull(e.Value) Then
           DataGridView1.Rows(e.RowIndex).DefaultCellStyle.BackColor = Color.Red
       End If
   End Sub