الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

إستخدام خاصية AlternatingRow BackColor للداتا جريد فيو

بدأه Ahmed_900 في 5 يوليو 2011 · 4 رد · 522 مشاهدة · في Microsoft Visual Basic.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

كيف يتم التحكم فى خاصية لون الخلفية للصفوف ولكن لمجموعة صفوف وليست صف بلون والآخر بلون آخر

شاكر لكم فضلكم

Datagridview.rar

#2

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

اخي قم بتعريف الاجراء التالي ومن ثم استدعيه بعد عملية تعبئة البيانات


Sub ChangeRowsBackColor()
Dim oldSerial As Integer = Convert.ToInt32(DataGridView1.Rows(0).Cells(0).Value)
Dim newSerial As Integer
Dim backColor As Color = Color.White
Dim flag As Boolean = True
For Each row As DataGridViewRow In DataGridView1.Rows
newSerial = Convert.ToInt32(row.Cells(0).Value)
If oldSerial <> newSerial Then
flag = Not flag
End If
If flag Then
backColor = Color.White
Else
backColor = Color.Gray
End If
row.DefaultCellStyle.BackColor = backColor
oldSerial = newSerial
Next
End Sub

اما سؤالك الثاني مش مفهوم؟!! الرجاء التوضيح

.:: Wish to become better and better ::.

#3

شكرا جزيلا أخى الكريم

هذا ما كنت أريده بالضبط

بالنسبة للسؤال الثانى أضفت سطر فقط إلى الإجراء وتم ما كنت أريده

Sub ChangeRowsBackColor()
        Dim oldSerial As Integer = Convert.ToInt32(DataGridView1.Rows(0).Cells(0).Value)
        Dim newSerial As Integer
        Dim backColor As Color = Color.White
        Dim flag As Boolean = True

        For Each row As DataGridViewRow In DataGridView1.Rows
            newSerial = Convert.ToInt32(row.Cells(0).Value)
            If oldSerial <> newSerial Then
                flag = Not flag
                DataGridView1.Rows(row.Index - 1).DividerHeight = 3  'هذا السطر الذى أضفته
            End If
            'If flag Then
            'backColor = Color.White
            'Else
            'backColor = Color.Gray
            'End If
            row.DefaultCellStyle.BackColor = backColor
            oldSerial = newSerial
        Next
    End Sub

لى سؤال آخر هى كيفية ممنع ترتيب الأعمدة تصاعديا وتنازيلا

ألغت الخاصية Enable Column Reordering

لكن ما زالت الخاصية تلك موجودة بمعنى عند الضغط على أى عمود يتم الترتيب

ممكن المساعدة

وشكرا لكم

#4

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

اخي يمكنك ذلك من تغيير خاصية الـ SortMode تبع العمود المراد تعطيله الى NotSortable

.:: Wish to become better and better ::.

#5

جزاك الله خيرا أخى الكريم وفتح الله عليك

هذا ما كنت أريده

تقبل تحياتى

مواضيع مشابهة