تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[VB.NET] الغاء حدث الضغط علي راس الاعمدة
#1
السلام عليكم

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

وانا لا اريد فعل اي شيء  عند الضغط علي اي عمود ولكن العملية تتم كيفية الغاء هذا الحدث

حاولت بالكود

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

كود :
Private Sub dataGridView1_CellContentClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles dataGridView1.CellContentClick

       Dim dgv As DataGridView = CType(sender, DataGridView)
       If e.ColumnIndex < 0 Or e.RowIndex < 0 Then
           Exit Sub
       End If
   End Sub
الرد
تم الشكر بواسطة:
#2
إقتباس :الغاء حدث الضغط علي راس الاعمدة

اذهب الى خصائص العمود وغير الخاصيه sortmaode واختار لها notsortable

واذا بالكود
DataGridview1.columns(1).sortMode=dataGridViewColumnSortMode.notSortable




إقتباس :عند الضغط علي راس اي عمود لاول مرة تفتح الواجهة يقوم باختيار وتحديد اول صف من صفوف الداتا جريد اجبارا 

اذا تقصد الغاء الاختيارات فهذا هو كود الغاء الاختيارات
DatagridView1.clearSelection
الرد
تم الشكر بواسطة: محمد اسماعيل , اسامه الهرماوي
#3
(17-05-19, 11:50 PM)sami4 كتب :
إقتباس :الغاء حدث الضغط علي راس الاعمدة

اذهب الى خصائص العمود وغير الخاصيه sortmaode واختار لها notsortable

واذا بالكود
DataGridview1.columns(1).sortMode=dataGridViewColumnSortMode.notSortable




إقتباس :عند الضغط علي راس اي عمود لاول مرة تفتح الواجهة يقوم باختيار وتحديد اول صف من صفوف الداتا جريد اجبارا 

اذا تقصد الغاء الاختيارات فهذا هو كود الغاء الاختيارات
DatagridView1.clearSelection

الكود الي وضعتة خاص بترتيب  بيانات الاعمدة تصاعديا او تنازليا


اما كود الاختيار لا يعمل ايضا يبقي السهم براس اول صف
الرد
تم الشكر بواسطة: elgokr
#4
(18-05-19, 12:10 AM)محمد اسماعيل كتب :
(17-05-19, 11:50 PM)sami4 كتب :
إقتباس :الغاء حدث الضغط علي راس الاعمدة

اذهب الى خصائص العمود وغير الخاصيه sortmaode واختار لها notsortable

واذا بالكود
DataGridview1.columns(1).sortMode=dataGridViewColumnSortMode.notSortable




إقتباس :عند الضغط علي راس اي عمود لاول مرة تفتح الواجهة يقوم باختيار وتحديد اول صف من صفوف الداتا جريد اجبارا 

اذا تقصد الغاء الاختيارات فهذا هو كود الغاء الاختيارات
DatagridView1.clearSelection

الكود الي وضعتة خاص بترتيب  بيانات الاعمدة تصاعديا او تنازليا


اما كود الاختيار لا يعمل ايضا يبقي السهم براس اول صف


انت تقصد السهم لا تريد ان يظهر

هذا الكود فيه جزء لاعادت رسم خلفيه راس السطر بدو السهم

لاحظ في الكود تم استخدام الحدث prepaint وليس postpaint الذ في السابق

فنقت الكود من الحدث السابق postpain الى داخل هذا الحدث prepaint ولا ادري ما الفرق بينهم

Private Sub DataGridView1_RowPrePaint(sender As Object, e As DataGridViewRowPrePaintEventArgs) Handles DataGridView1.RowPrePaint

   e.Handled = True
   e.PaintCells(e.ClipBounds, DataGridViewPaintParts.All)
   e.PaintHeader(DataGridViewPaintParts.Background Or _
                 DataGridViewPaintParts.Border Or _
                 DataGridViewPaintParts.Focus Or _
                 DataGridViewPaintParts.SelectionBackground Or _
                 DataGridViewPaintParts.ContentForeground)

   Dim r = New Rectangle(e.RowBounds.X + sender.RowHeadersWidth - 16 - 3, e.RowBounds.Y + 3, 16, 16)
   If sender.RightToLeft = RightToLeft.Yes Then r.X = sender.Width - sender.RowHeadersWidth + 3
   If Val(sender.Rows(e.RowIndex).Cells(2).Value) = Val(TextBox1.Text) Then
       e.Graphics.DrawImage(Me.ImageList1.Images("img1"), r)
   End If

End Sub



استخدام الحدث prepaint  وجدتها بعد البحث في اغلب المواقع لاخفاء السهم
الرد
#5
(18-05-19, 12:31 AM)sami4 كتب :
(18-05-19, 12:10 AM)محمد اسماعيل كتب :
(17-05-19, 11:50 PM)sami4 كتب :
إقتباس :الغاء حدث الضغط علي راس الاعمدة

اذهب الى خصائص العمود وغير الخاصيه sortmaode واختار لها notsortable

واذا بالكود
DataGridview1.columns(1).sortMode=dataGridViewColumnSortMode.notSortable




إقتباس :عند الضغط علي راس اي عمود لاول مرة تفتح الواجهة يقوم باختيار وتحديد اول صف من صفوف الداتا جريد اجبارا 

اذا تقصد الغاء الاختيارات فهذا هو كود الغاء الاختيارات
DatagridView1.clearSelection

الكود الي وضعتة خاص بترتيب  بيانات الاعمدة تصاعديا او تنازليا


اما كود الاختيار لا يعمل ايضا يبقي السهم براس اول صف


انت تقصد السهم لا تريد ان يظهر

هذا الكود فيه جزء لاعادت رسم خلفيه راس السطر بدو السهم

لاحظ في الكود تم استخدام الحدث prepaint وليس postpaint الذ في السابق

فنقت الكود من الحدث السابق postpain الى داخل هذا الحدث prepaint ولا ادري ما الفرق بينهم

Private Sub DataGridView1_RowPrePaint(sender As Object, e As DataGridViewRowPrePaintEventArgs) Handles DataGridView1.RowPrePaint

   e.Handled = True
   e.PaintCells(e.ClipBounds, DataGridViewPaintParts.All)
   e.PaintHeader(DataGridViewPaintParts.Background Or _
                 DataGridViewPaintParts.Border Or _
                 DataGridViewPaintParts.Focus Or _
                 DataGridViewPaintParts.SelectionBackground Or _
                 DataGridViewPaintParts.ContentForeground)

   Dim r = New Rectangle(e.RowBounds.X + sender.RowHeadersWidth - 16 - 3, e.RowBounds.Y + 3, 16, 16)
   If sender.RightToLeft = RightToLeft.Yes Then r.X = sender.Width - sender.RowHeadersWidth + 3
   If Val(sender.Rows(e.RowIndex).Cells(2).Value) = Val(TextBox1.Text) Then
       e.Graphics.DrawImage(Me.ImageList1.Images("img1"), r)
   End If

End Sub



استخدام الحدث prepaint  وجدتها بعد البحث في اغلب المواقع لاخفاء السهم

فعلا اخي سامي تم حل المشكلة جزاك اللَّة كل الخير عن الجميع
الرد
تم الشكر بواسطة: ابراهيم ايبو , elgokr


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [ تم الحل ] خطأ عند الضغط على الداتاجريد محمد خيري 5 118 12-04-19, 02:21 AM
آخر رد: elgokr
  [VB.NET] عرض بيانات سجل على نموذج عند الضغط مرتين على DataGridView keno0177 8 178 09-04-19, 02:20 AM
آخر رد: elgokr
  [سؤال] الغاء الارقام العشرية من الدتا جريد فيو abumuhannadzym 12 504 30-12-18, 07:55 AM
آخر رد: abumuhannadzym
  مشكلة عند الضغط على زر التخزين nooralcown 1 185 10-12-18, 03:10 PM
آخر رد: elgokr
  عند الضغط Next يتم تجاوز صف Hazem1 3 203 10-12-18, 03:02 PM
آخر رد: elgokr
Exclamation [VB.NET] كيف يمكنني أن أعرف هل تم الضغط على زر نجمة * sniperjawadino 4 335 07-11-18, 07:13 PM
آخر رد: sniperjawadino
  كيفية فتح صفحة انترنت عن طريق الضغط علي اسم الموقع hamadz 4 277 22-10-18, 10:35 PM
آخر رد: fouadhdfouad
  هل يوجد خاصية للتحكم في عرض الاعمدة بالداتا جريد فيو essawq 7 434 29-09-18, 01:09 PM
آخر رد: essawq
  [VB.NET] عرض معلومات في فورم 2 بعد الضغط على زر في فورم 1 Simo1991 11 596 18-09-18, 09:32 PM
آخر رد: elgokr
  جعل الاعمدة auto fit في ملف ال excel المصدر من datatable Rabeea Qbaha 1 270 18-09-18, 11:35 AM
آخر رد: asemshahen5

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم