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

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


انا قمت باستخدام بديل للتسلسل التلقائي بمعني وضع عمود وهمي للترقيم وذالك لمشاكل الترقيم التليقائي بعد الحذف


الكود  كان باحد المواضيع لاحد الاخوة بالمنتدي كالتالي



كود :
For Each r As DataGridViewRow In Me.DataGridView1.Rows
           If Not r.IsNewRow Then r.Cells(1).Value = (r.Index + 1).ToString
       Next

الكود بيترتب ويضع الارقام لترتيب الصفوف بدون مشاكل

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

تظهر مشكلة عند الضغط اعلي العمود  ولا يقوم بالترتيب والرجوع الي حالتة الارقام من 1 الي اخر رقم باخر صف مثلا اريد عند الضغط يظهر الترتيب تصاعدة وتنازلي ا
لو عاوز تلغي الترتيب التصاعدي والتنازلي في datagridview استخدم
PHP كود :
   Public Sub NO_SORTORDER(ByVal DataGridView As DataGridView)
 
       For Each DGV As DataGridViewColumn In DataGridView.Columns
            DGV
.SortMode DataGridViewColumnSortMode.NotSortable
        Next
    End Sub 

لو عاوز تخلي الترقيم التلقائي في head row  في datagridview استخدم


PHP كود :
For As Integer 0 To DGV1.Rows.Count 2
            DGV1
.Rows(I).HeaderCell.Value = (1).ToString
        Next 

لو عاوز تستخدم اي الطرقتين في الترقيم التلقائي استخدم الحدث ده لارجاع الترقيم

PHP كود :
   Private Sub DGV1_ColumnHeaderMouseClick(sender As ObjectAs DataGridViewCellMouseEventArgsHandles DGV1.ColumnHeaderMouseClick
        For I 
As Integer 0 To DGV1.Rows.Count 2
            DGV1
.Rows(I).HeaderCell.Value = (1).ToString
        Next
    End Sub 
او
PHP كود :
   Private Sub DGV1_ColumnHeaderMouseClick(sender As ObjectAs DataGridViewCellMouseEventArgsHandles DGV1.ColumnHeaderMouseClick
        For Each r 
As DataGridViewRow In Me.DataGridView1.Rows
            If Not r
.IsNewRow Then r.Cells(1).Value = (r.Index 1).ToString
        Next
    End Sub 
(23-01-18, 01:14 PM)محمود صالح كتب : [ -> ]لو عاوز تلغي الترتيب التصاعدي والتنازلي في datagridview استخدم
PHP كود :
   Public Sub NO_SORTORDER(ByVal DataGridView As DataGridView)
 
       For Each DGV As DataGridViewColumn In DataGridView.Columns
            DGV
.SortMode DataGridViewColumnSortMode.NotSortable
        Next
    End Sub 

لو عاوز تخلي الترقيم التلقائي في head row  في datagridview استخدم


PHP كود :
For As Integer 0 To DGV1.Rows.Count 2
            DGV1
.Rows(I).HeaderCell.Value = (1).ToString
        Next 

لو عاوز تستخدم اي الطرقتين في الترقيم التلقائي استخدم الحدث ده لارجاع الترقيم

PHP كود :
   Private Sub DGV1_ColumnHeaderMouseClick(sender As ObjectAs DataGridViewCellMouseEventArgsHandles DGV1.ColumnHeaderMouseClick
        For I 
As Integer 0 To DGV1.Rows.Count 2
            DGV1
.Rows(I).HeaderCell.Value = (1).ToString
        Next
    End Sub 
او
PHP كود :
   Private Sub DGV1_ColumnHeaderMouseClick(sender As ObjectAs DataGridViewCellMouseEventArgsHandles DGV1.ColumnHeaderMouseClick
        For Each r 
As DataGridViewRow In Me.DataGridView1.Rows
            If Not r
.IsNewRow Then r.Cells(1).Value = (r.Index 1).ToString
        Next
    End Sub 


الكود دة ظبط معايا بس بيخلي اخر صف بصفر  لية مش عارف 


كود :
For I As Integer = 0 To DGV1.Rows.Count - 2
           DGV1.Rows(I).HeaderCell.Value = (I + 1).ToString
       Next
وسع عرض headrow خليه 60 هكذا

[attachment=16852]

انا شاكك ان الدتا جريد الى عندك فيها 10 صفوف فاخر صف ب 10 ( ظاهر 0 ولم يظهر 1 ) ولذك قم بتوسيع headrow
ياجماعة انا عايز ترقيم تلقائى نفس اللى موجود في DGV ولكن يكون في استعلام بحيث عند فتح الاستعلام يظهر عمود الترقيم للسجلات

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