تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
اظهار الايقونه على gridview button حسب اذا كان يوجد بينات في السطر المعين
#1
السلام عليكم 
انا استخدم اداه datagridview لاظهار البيانات من ضمن هذه البيانات هناك عمود يحتوي على صور 
ليست جميع الاسطر تحتوي على صوره اسطر فيها و اسطر لا
ما اريده هو فحص اذا كان هناك صوره في اسطر المعين فتظهر للمستخدم "ايقونة1"
اما اذا كان السطر لا يحتوي على صوره تظهر "ايقونة2"
هذه هي ال gridview في خانة الصور استطيع عرض صورة واحدة وهي ثابتة للكل

وهذا الكود الخاص باظهار ال gridview
PHP كود :
Public Sub showGV()

 
       Using cmd As New SqlCommand("SELECT * FROM money_sent"Conn)
 
           cmd.CommandType CommandType.Text
            Using sda 
As New SqlDataAdapter(cmd)
 
               Using dt As New DataTable()
 
                   sda.Fill(dt)

 
                   'Set AutoGenerateColumns False
                    MetroGrid1.AutoGenerateColumns = False

                    '
Set Columns Count
                    MetroGrid1
.ColumnCount 12

                    
'Add Columns

                    Dim bc As New DataGridViewButtonColumn
                    bc.Tag = False
                    bc.Text = "Delete"
                    bc.Name = ""
                    bc.Width = 25
                    '
MetroGrid1.Columns.Add(bc)
 
                   MetroGrid1.Columns.Insert(0bc)


 
                   MetroGrid1.Columns(1).Name "smoney"
 
                   MetroGrid1.Columns(1).HeaderText "المبلق المرسل"
 
                   MetroGrid1.Columns(1).DataPropertyName "smoney"

 
                   MetroGrid1.Columns(2).Name "moneyt"
 
                   MetroGrid1.Columns(2).HeaderText "العملة"
 
                   MetroGrid1.Columns(2).DataPropertyName "moneyt"

 
                   MetroGrid1.Columns(3).Name "commission"
 
                   MetroGrid1.Columns(3).HeaderText "العمولة"
 
                   MetroGrid1.Columns(3).DataPropertyName "commission"

 
                   MetroGrid1.Columns(4).Name "rname"
 
                   MetroGrid1.Columns(4).HeaderText "أسم المستقبل"
 
                   MetroGrid1.Columns(4).DataPropertyName "rname"

 
                   MetroGrid1.Columns(5).Name "rphone"
 
                   MetroGrid1.Columns(5).HeaderText "هاتف المستقبل"
 
                   MetroGrid1.Columns(5).DataPropertyName "rphone"

 
                   MetroGrid1.Columns(6).Name "rcountry"
 
                   MetroGrid1.Columns(6).HeaderText "البلد المستقيل"
 
                   MetroGrid1.Columns(6).DataPropertyName "rcountry"

 
                   MetroGrid1.Columns(7).Name "sname"
 
                   MetroGrid1.Columns(7).HeaderText "أسم المستقبل"
 
                   MetroGrid1.Columns(7).DataPropertyName "sname"

 
                   MetroGrid1.Columns(8).Name "sphone"
 
                   MetroGrid1.Columns(8).HeaderText "هاتف المستقبل"
 
                   MetroGrid1.Columns(8).DataPropertyName "sphone"

 
                   MetroGrid1.Columns(9).Name "comname"
 
                   MetroGrid1.Columns(9).HeaderText "الشركة المستقبلة"
 
                   MetroGrid1.Columns(9).DataPropertyName "comname"

 
                   MetroGrid1.Columns(10).Name "date"
 
                   MetroGrid1.Columns(10).HeaderText "تاريخ الارسال"
 
                   MetroGrid1.Columns(10).DataPropertyName "date"

 
                   MetroGrid1.Columns(11).Name "note"
 
                   MetroGrid1.Columns(11).HeaderText "الملاحظات"
 
                   MetroGrid1.Columns(11).DataPropertyName "note"

 
                   MetroGrid1.Columns(12).Name "id"
 
                   MetroGrid1.Columns(12).HeaderText "id"
 
                   MetroGrid1.Columns(12).DataPropertyName "id"

 
                   MetroGrid1.DataSource dt

                    Dim showbt 
As New DataGridViewButtonColumn
                    showbt
.Tag False
                    showbt
.Text "image"
 
                   showbt.Name ""
 
                   showbt.Width 25
                    
'MetroGrid1.Columns.Add(bc)
                    MetroGrid1.Columns.Insert(10, showbt)


                End Using
            End Using
        End Using
    End Sub 
وهذا الكود الخاص لوضع الايقونه على ال button    
PHP كود :
Private Sub MetroGrid1_CellPainting(sender As ObjectAs DataGridViewCellPaintingEventArgsHandles MetroGrid1.CellPainting End If
 
       If e.ColumnIndex 10 AndAlso e.RowIndex >= 0 Then
            e
.Paint(e.CellBoundsDataGridViewPaintParts.All)
 
           e.Graphics.DrawImage(My.Resources.show_image_25CInt((e.CellBounds.Width 2) - (My.Resources.show_image_25.Width 2)) + e.CellBounds.XCInt((e.CellBoun
            e
.Handled True
        End 
If
 
   End Sub 
وهذا الكود الخاص لاظهار الصوره المخزنة في قاعدة البيانات عند الضغط على ال button

PHP كود :
Dim id As Integer
    Private Sub MetroGrid1_CellContentClick
(sender As ObjectAs DataGridViewCellEventArgsHandles MetroGrid1.CellContentClick
        id 
MetroGrid1.SelectedRows(0).Cells(13).Value.ToString

        If e
.ColumnIndex 10 Then
            Dim dr 
As SqlDataReader
            Dim stream 
As New MemoryStream()
 
           Conn.Open()
 
           Dim query As String
            query 
"select * from money_sent where id='" id "'"
 
           Cmd = New SqlCommand(queryConn)
 
           dr Cmd.ExecuteReader
            While dr
.Read
                If dr
("idpicture").ToString() <> "" Then
                    Dim image 
As [Byte]() = DirectCast(dr("idpicture"), [Byte]())
 
                   stream.Write(image0image.Length)
 
                   Dim bitmap As New Bitmap(stream)
 
                   Form3.Show()
 
                   Form3.PictureBox1.Image bitmap
                Else
                    MsgBox
("لا يوجد صورة في هذة الخانة"MsgBoxStyle.Information"معلومات")
 
               End If
 
           End While
 
           Conn.Close()
 
       End If
End Sub 
الرد }}}}
تم الشكر بواسطة:
#2
لا يوجد رد ؟؟
او طريقه لفهل هذا
الرد }}}}
تم الشكر بواسطة:
#3
الغجلة ام الندامة يا ابن أخي
الفكرة ببساطة اشترط في عرض الايقونات ما يتم عرضه في العمود حسب قيمة معينة سواء عددية او نصية
بالبلدي كذا إذا كانت قيمة العمود س = 5 خلي الايقونة في العمود ص = Ok.ico والا فلتكن الايقونة في العمود ص = No.ico
استخدم رمحك أنت ولا تجعل الاخرين يطعمونك
بالتوفيق
سبحان الله والحمدلله ولا إله إلا الله والله أكبر
 رَبِّ اغْفِرْ لِي وَلِوَالِدَيَّ
Heart
الرد }}}}
تم الشكر بواسطة:
#4
دائماً يوجد طريقة و من حظك ان القاعدة عندي فيها صور
بالاول روح Resource و اضف صورتين واحدة لوجود بيانات و اخرى لعدم وجود بيانات

و انتبه لمقاس الصورة انا اخترتهم قياس 24X24 يعني ايقونة
و اضف هذا الكود في المكان المناسب لك
PHP كود :
       For Each row As DataGridViewRow In Studant_tbDataGridView.Rows
            Dim cell 
As DataGridViewCell row.Cells("StuPic")

 
           If (cell.Value.ToString.Length And Not IsNothing(cell.Value.ToString.Length)) Then
                row
.Cells("StuPic").Value CType(My.Resources.imgSystem.Drawing.Image)
 
           Else
                row
.Cells("StuPic").Value CType(My.Resources.noimgSystem.Drawing.Image)
 
           End If

 
           If row.IsNewRow Then
                row
.Cells("StuPic").Value CType(My.Resources.noimgSystem.Drawing.Image)
 
           End If

 
       Next 
الحقل StuPic هو حقل الصورة لدي في القاعدة

بالتوفيق اخي
اللهم لك الحمد كما ينبغي لجلال وجهك و عظيم سلطانك
في حل و ترحال
الرد }}}}
تم الشكر بواسطة: أبو عمر , Rabeea Qbaha
#5
(12-09-16, 01:42 AM)أبو عمر كتب : الغجلة ام الندامة يا ابن أخي
الفكرة ببساطة اشترط في عرض الايقونات ما يتم عرضه في العمود حسب قيمة معينة سواء عددية او نصية
بالبلدي كذا  إذا كانت قيمة العمود س = 5 خلي الايقونة في العمود ص = Ok.ico والا فلتكن الايقونة في العمود ص = No.ico
استخدم رمحك أنت ولا تجعل الاخرين يطعمونك
بالتوفيق

شكرا ابو عمر ، انا افهم ما تقول ولكن حاولت عدة محاولات ولم ينفع معي الامر او ينفع بوجود مشاكل فاردت ان اعرف اذ هناك طريقه افضل 
ففي الطريقه التي استخدمها ال datagridview اصبحت تعرظ البيانات بشكل بطيء ومزعج.
كل عام وانت بخير
الرد }}}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [VB.NET] ما هيه افضل قواعد بينات اتعامل معاها dubai.eig 3 101 25-11-16, 01:07 AM
آخر رد: hassan
  اظهار او اخفاء الرسائل للمستخدم العواد الصغير 11 150 09-11-16, 06:43 PM
آخر رد: العواد الصغير
Lightbulb [سؤال] هل يوجد اداة لاستعراض الانترنت غير webcontrol elhon.tec 1 155 09-11-16, 03:24 PM
آخر رد: elhon.tec
  [VB.NET] استخراج رقم السطر rabeh.ram 2 68 08-11-16, 12:18 AM
آخر رد: rabeh.ram
  [VB.NET] كود الفحص قبل الحفظ هل يوجد افضل منه ؟؟ 0theghost0 0 71 25-10-16, 07:11 PM
آخر رد: 0theghost0
  [VB.NET] هل يوجد كود لقراءة ملفات bin ?? 0theghost0 1 70 05-10-16, 08:51 PM
آخر رد: محمد كريّم
  [سؤال] اظهار الصورة naden 3 146 03-10-16, 08:58 AM
آخر رد: silverlight
  تصحيح الخطاء في السطر الذي لونه احمر تحته خط علي كعبي 1 87 17-09-16, 07:48 PM
آخر رد: silverlight
  [VB.NET] شباب هل يوجد حل لهذة المشكلة الترقيم ؟؟ 0theghost0 5 205 03-09-16, 06:33 PM
آخر رد: 0theghost0
  [VB.NET] هل يمكنني تغيير اسم Button من مكان آخر sniperjawadino 9 312 31-08-16, 07:34 PM
آخر رد: sniperjawadino

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


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