إضافة زر في خلية من شبكة البيانات DataGridView

استعرض الموضوع السابق استعرض الموضوع التالي اذهب الى الأسفل

إضافة زر في خلية من شبكة البيانات DataGridView

مُساهمة من طرف RANA في الثلاثاء ديسمبر 17, 2013 10:05 am

بسم الله الرحمن الرحيم 

_ يمكنك أستخدام الكائن DataGridViewButtonColumn لانشاء زر فى خليفة شبكة البيانات DataGridView من خلال الخطوات التالية :


_ فى البداية تم انشاء مثيل جديد من الكائن
الرمز:
Dim btn As New DataGridViewButtonColumn()

_يتم إضافة الكائن الى عامود شبكة البيانات :
الرمز:
DataGridView1.Columns.Add(btn)

_يتم تسمية  رأس هذا العامود وليكن بأسم Click Data:
الرمز:
 btn.HeaderText = "Click Data"

_نقوم بوضع تسمية توضيحية للزر
الرمز:
btn.Text = "Click Here"

_أخير يتم استخدام الكود التالى لاظهار التسمية على زر الامر
الرمز:
btn.UseColumnTextForButtonValue = True


و الكود الكامل على النحو التالى :

الرمز:
Imports System.Data.SqlClient
Public Class Form1
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        DataGridView1.ColumnCount = 3
        DataGridView1.Columns(0).Name = "رقم النتج"
        DataGridView1.Columns(1).Name = "اسم المنتج"
        DataGridView1.Columns(2).Name = "سعر المنتج"

        Dim row As String() = New String() {"1", "جوال x2", "1000"}
        DataGridView1.Rows.Add(row)
        row = New String() {"2", "ipad", "2000"}
        DataGridView1.Rows.Add(row)
        row = New String() {"3", "cd rome", "3000"}
        DataGridView1.Rows.Add(row)
        row = New String() {"4", "Product 4", "4000"}
        DataGridView1.Rows.Add(row)

        Dim btn As New DataGridViewButtonColumn()
        DataGridView1.Columns.Add(btn)
        btn.HeaderText = "Click Data"
        btn.Text = "Click Here"
        btn.UseColumnTextForButtonValue = True

    End Sub
    Private Sub DataGridView1_CellClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView1.CellClick
        If e.ColumnIndex = 3 Then
            MsgBox(("Row : " + e.RowIndex.ToString & "  Col : ") + e.ColumnIndex.ToString)
        End If
    End Sub
End Class

RANA
....
....

تاريخ التسجيل : 01/08/2013
المساهمات : 64
النقاط : 103
التقيم : 1
الدولة : فلسطين
الجنس : انثى

الرجوع الى أعلى الصفحة اذهب الى الأسفل

رد: إضافة زر في خلية من شبكة البيانات DataGridView

مُساهمة من طرف أحمد مناع في الثلاثاء ديسمبر 17, 2013 2:18 pm


أصبحتى محترفة للغاية يا رنا .

ـــــــــــــــــــ التوقيع ــــــــــــــــــــ
سبحان الله وبحمدة .....سبحان الله العظيم

إن فقدت مكان بذورك التي بذرتها يوما ما سيخبرك المطر أين زرعتها ..لذا إبذر الخير فوق أي أرض وتحت أي سماء ومع أي أحد.. فأنت لا تعلم أين تجده ومتى تجده؟! إزرع جميلا ولو في غير موضعه .... فلا يضيع جميلا أينما زرعا .. فما أجمل العطاء... فقد تجد جزاءه في الدنيا أو يكون لك ذخرا في الآخرة

أحمد مناع
.
.

تاريخ التسجيل : 15/02/2011
المساهمات : 810
النقاط : 1479
التقيم : 69
الدولة : مصر
الجنس : ذكر

http://egy-tech.forumegypt.net

الرجوع الى أعلى الصفحة اذهب الى الأسفل

رد: إضافة زر في خلية من شبكة البيانات DataGridView

مُساهمة من طرف tryold في السبت ديسمبر 21, 2013 11:58 am

سلام

جميل جدا  يا اخت رنا

سؤال ؟

كيف ادخل حدث معين للزر الذي انشأتة

مثل للتعديل  اريد ان اضغط على الزر وينتقل لصفحة التعديل

كيف ذلك ؟

ـــــــــــــــــــ التوقيع ــــــــــــــــــــ


ليس من اخترق جهاز اصبح هكر

وليس من كتب كود اصبح مبرمج

وليس من كسر برنامج صار خيبير كسر

ولكن من تواضع لله رفعة


tryold
...
...

تاريخ التسجيل : 06/04/2013
المساهمات : 37
النقاط : 45
التقيم : 0
الدولة : السعودية
الجنس : ذكر

الرجوع الى أعلى الصفحة اذهب الى الأسفل

رد: إضافة زر في خلية من شبكة البيانات DataGridView

مُساهمة من طرف VB.NET في السبت ديسمبر 21, 2013 7:47 pm

tryold كتب:سلام

جميل جدا  يا اخت رنا

سؤال ؟

كيف ادخل حدث معين للزر الذي انشأتة

مثل للتعديل  اريد ان اضغط على الزر وينتقل لصفحة التعديل

كيف ذلك ؟

باستخدام الكود التالى :

الرمز:
 Private Sub DataGridView1_CellClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView1.CellClick
        If e.ColumnIndex = 3 And e.RowIndex = 3 Then
            MsgBox("vb.net")
        End If
    End Sub

_ فى حدث CellClick للداتا جريد ...يتم أستخدام جملة شرطية لتحديد الخلية التى فى العامود 4 و الصف 4 فان كان صحيحا يتم تنفيذ الكود مثل إظهار رسالة ....و يجب ملاحظة أن الرقم المفهرس index يبدا بصفر و بالتالى فان الرقم 3 للتعبير عن العامود و الصف رقم 4


VB.NET
المراقبين
المراقبين

تاريخ التسجيل : 18/02/2011
المساهمات : 117
النقاط : 185
التقيم : 6
الدولة : مصر
الجنس : ذكر

الرجوع الى أعلى الصفحة اذهب الى الأسفل

رد: إضافة زر في خلية من شبكة البيانات DataGridView

مُساهمة من طرف tryold في الأحد ديسمبر 22, 2013 7:05 am

VB.NET كتب:
باستخدام الكود التالى :

الرمز:
 Private Sub DataGridView1_CellClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView1.CellClick
        If e.ColumnIndex = 3 And e.RowIndex = 3 Then
            MsgBox("vb.net")
        End If
    End Sub

_ فى حدث CellClick للداتا جريد ...يتم أستخدام جملة شرطية لتحديد الخلية التى فى العامود 4 و الصف 4 فان كان صحيحا يتم تنفيذ الكود مثل إظهار رسالة ....و يجب ملاحظة أن الرقم المفهرس index يبدا بصفر و بالتالى فان الرقم 3 للتعبير عن العامود و الصف رقم 4



شكرا لك على الرد

ولكن انا اقصد حدث الزر الذي انشأناه في الداتاقريد عند الضغط علية اريدة يحدث لي امرا وليس الضغط على الـ datagradeview cell

وإنما الضغط على الــ btn الموجود داخل الداتاقريد

إن شاء الله يكون كلامي واضح ومفهوم

اكرر شكري للرد على سؤالي

ـــــــــــــــــــ التوقيع ــــــــــــــــــــ


ليس من اخترق جهاز اصبح هكر

وليس من كتب كود اصبح مبرمج

وليس من كسر برنامج صار خيبير كسر

ولكن من تواضع لله رفعة


tryold
...
...

تاريخ التسجيل : 06/04/2013
المساهمات : 37
النقاط : 45
التقيم : 0
الدولة : السعودية
الجنس : ذكر

الرجوع الى أعلى الصفحة اذهب الى الأسفل

رد: إضافة زر في خلية من شبكة البيانات DataGridView

مُساهمة من طرف VB.NET في الأحد ديسمبر 22, 2013 12:18 pm

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

VB.NET
المراقبين
المراقبين

تاريخ التسجيل : 18/02/2011
المساهمات : 117
النقاط : 185
التقيم : 6
الدولة : مصر
الجنس : ذكر

الرجوع الى أعلى الصفحة اذهب الى الأسفل

رد: إضافة زر في خلية من شبكة البيانات DataGridView

مُساهمة من طرف أحمد مناع في الأحد ديسمبر 22, 2013 12:24 pm

جزاكم الله خيرا أخى vb ....لكن لدى سؤال 

_هل توجد طريقة لوضع ايقونة على هذا الزر ؟

ـــــــــــــــــــ التوقيع ــــــــــــــــــــ
سبحان الله وبحمدة .....سبحان الله العظيم

إن فقدت مكان بذورك التي بذرتها يوما ما سيخبرك المطر أين زرعتها ..لذا إبذر الخير فوق أي أرض وتحت أي سماء ومع أي أحد.. فأنت لا تعلم أين تجده ومتى تجده؟! إزرع جميلا ولو في غير موضعه .... فلا يضيع جميلا أينما زرعا .. فما أجمل العطاء... فقد تجد جزاءه في الدنيا أو يكون لك ذخرا في الآخرة

أحمد مناع
.
.

تاريخ التسجيل : 15/02/2011
المساهمات : 810
النقاط : 1479
التقيم : 69
الدولة : مصر
الجنس : ذكر

http://egy-tech.forumegypt.net

الرجوع الى أعلى الصفحة اذهب الى الأسفل

رد: إضافة زر في خلية من شبكة البيانات DataGridView

مُساهمة من طرف VB.NET في الأحد ديسمبر 22, 2013 12:54 pm

أحمد مناع كتب:جزاكم الله خيرا أخى vb ....لكن لدى سؤال 

_هل توجد طريقة لوضع ايقونة على هذا الزر ؟

نعم يوجد من خلال كتالة الكود التالى لحدث CellPainting للداتا جريد

الرمز:
Private Sub InvoiceLinesDataGridView_CellPainting(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellPaintingEventArgs) Handles InvoiceLinesDataGridView.CellPainting

    If e.ColumnIndex = 3 AndAlso e.RowIndex >= 0 Then
        e.Paint(e.CellBounds, DataGridViewPaintParts.All)

        Dim bmpFind As Bitmap = My.Resources.binoc16_h1
        Dim ico As Icon = Icon.FromHandle(bmpFind.GetHicon)
        e.Graphics.DrawIcon(ico, e.CellBounds.Left + 3, e.CellBounds.Top + 3)
        e.Handled = True
    End If
End Sub

_ فى السطر الاول و الثانى جملة شرطية لتحديد الخلية التى سيتم وضع ايقونة للزر بها .
_فى السطر الثالث تم تحديد صورة نقطية Bitmap من Resources
_ فى السطر الرابع تم تحويل الصورة Bitmap الى Icon
_ فى الاسطر الاخيرة تم رسم الايكون على الخلية و بالتالى ستظهر على زر الامر التى بهذا الخلية

VB.NET
المراقبين
المراقبين

تاريخ التسجيل : 18/02/2011
المساهمات : 117
النقاط : 185
التقيم : 6
الدولة : مصر
الجنس : ذكر

الرجوع الى أعلى الصفحة اذهب الى الأسفل

رد: إضافة زر في خلية من شبكة البيانات DataGridView

مُساهمة من طرف RANA في الأحد ديسمبر 29, 2013 3:07 pm

مشكورين اخوانى الكرام ...وشكر ليك خاص vb.net

RANA
....
....

تاريخ التسجيل : 01/08/2013
المساهمات : 64
النقاط : 103
التقيم : 1
الدولة : فلسطين
الجنس : انثى

الرجوع الى أعلى الصفحة اذهب الى الأسفل

رد: إضافة زر في خلية من شبكة البيانات DataGridView

مُساهمة من طرف tryold في الخميس يناير 02, 2014 3:58 pm

VB.NET كتب:جزاكم الله خيرا يا اخى ....لكن الشفرة ستؤدى الى نفس المعنى ...لان الزر سيكون بحجم الخلية نفسها و كل المواقع تستخدم نفس الشفرة لعمل حدث لهذا الزر ....بل فى اعتقادى ان هذا الزر هو مجرد رسم ثلاثى الابعاد لحدود الخلية فتظهر و كانها زر امر .....على اى حال ارجوا المعذرة على عدم قدرتى للوصول لما تصبوا اليه


معنى ذلك يا اخي الزر الذي وضعناه ليس لة داعي  اذا لم نستطيع ان نتحكم فية

على العموم شكرا لك وشكرا لكاتب الموضوع

ـــــــــــــــــــ التوقيع ــــــــــــــــــــ


ليس من اخترق جهاز اصبح هكر

وليس من كتب كود اصبح مبرمج

وليس من كسر برنامج صار خيبير كسر

ولكن من تواضع لله رفعة


tryold
...
...

تاريخ التسجيل : 06/04/2013
المساهمات : 37
النقاط : 45
التقيم : 0
الدولة : السعودية
الجنس : ذكر

الرجوع الى أعلى الصفحة اذهب الى الأسفل

رد: إضافة زر في خلية من شبكة البيانات DataGridView

مُساهمة من طرف RANA في الثلاثاء يناير 21, 2014 7:47 am

tryold كتب:


معنى ذلك يا اخي الزر الذي وضعناه ليس لة داعي  اذا لم نستطيع ان نتحكم فية

على العموم شكرا لك وشكرا لكاتب الموضوع

كيف يا اخى لا يمكن التحكم فية ...انا عن نفسى استطعت ان التحكم فية باظهر رسالة عند النقر علية باستخدام الكود حقك اخى vb.net  Surprised

RANA
....
....

تاريخ التسجيل : 01/08/2013
المساهمات : 64
النقاط : 103
التقيم : 1
الدولة : فلسطين
الجنس : انثى

الرجوع الى أعلى الصفحة اذهب الى الأسفل

رد: إضافة زر في خلية من شبكة البيانات DataGridView

مُساهمة من طرف issatiger2050 في الخميس يوليو 17, 2014 4:26 pm

[img][/img]

issatiger2050
..
..

تاريخ التسجيل : 17/07/2014
المساهمات : 13
النقاط : 13
التقيم : 0
الدولة : ليبيا
الجنس : ذكر

الرجوع الى أعلى الصفحة اذهب الى الأسفل

استعرض الموضوع السابق استعرض الموضوع التالي الرجوع الى أعلى الصفحة


 
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى