تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[عنوان معدل]عرض صورة من قاعدة البيانات داخل picturebox
#1
بسم الله الرحمن الرحيم

اخواني واخواتي واساتذتي الفضلاء .. بعد التحية ..

اعاني من مشكلة صغيرة تؤرقني وتقودني للجنون ..
بالتعاون مع اخي الفاضل sajad واتباعاً لإرشادته تمكنت من اتمام العمل على قاعدة بيانات MS Access والبحث داخلها واظهار محتوياتها في Datagridview ، وقمت بحفظ صور داخل قاعدة البيانات على شكل Binary وعند تشغيل المشروع تظهر الصور بشكل طبيعي داخل ال Datagridview ..
المشكلة :
بعد البحث عن معلومات شخص معين داخل قاعدة البيانات تظهر بياناته في textbox . وقمت بإضافة Picturebox لكي تظهر بداخلها صورة هذا الشخص عند البحث عنه . المشكلة انني لا استطيع اظهار صورة الشخص او استخلاصها من ال Datagridview لإظهارها في ال picturebox .

فهل من طريقة لإظهار الصور الموجودة بداخل ال Datagridview في ال Picturebox .

أو

طريقة لربط ال Picturebox بال Datagridview .

أو

مثال جاهز يشرح ذلك .

علماً بأني استخدم vb.net 2012 .


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

شكر الله لكم واثابكم ،،،
الرد }}}}
تم الشكر بواسطة:
#2
[COLOR="#800000"]السلام عليكم اخي العزيز

ليس شرطا ان تربط الpicturebox بالdatagridview فتستطيع عرص الصورة عند البحث في الPictureBox مباشرة

انظر الى السطر الاخير من كود البحث هذا الذي استخدمه انا لعرض الصورة عند البحث

PHP كود :
Public Sub searchmethod(srcname As String)
        
Dim row As DataRow
        
'''///////////////////////////////////////////
        row = DirectCast(mytable.Select("ename like'
%" & srcname & "%'").GetValue(0), DataRow)
        empidtxt.Text = row("eid").ToString()
        empnametxt.Text = row("ename").ToString()
        empbdtxt.Text = row("ebdate").ToString()
        empsaltxt.Text = row("esalary").ToString()
        Dnamecmbobx.SelectedItem = row("dname").ToString()
        PictureBox1.Image = Image.FromStream(New MemoryStream(DirectCast(row("eimage"), Byte())))
        '''
///////////////////////////////////////////
    
End Sub 

بالتوفيق ان شاءالله[/COLOR]
الرد }}}}
تم الشكر بواسطة:
#3
ممكن الجزئية الخاصة بالبحث؟
او لو انك تستخدم databindings لعرض محتويات الـ dataset في مربع صورة اكتب
كود :
picturebox1.databindings.add("image",dataset,"table.pic",true)
أستودعكم الله الذي لا تضيع ودائعه أرجو ان تجدوا بمشاركاتي ما يجعلكم تدعون لي بخير ان تحتم غيابي.
الرد }}}}
تم الشكر بواسطة:
#4
بسم الله الرحمن الرحيم

اشكركم جزيل الشكر لتفاعلكم معي .. وبارك الله فيكم وان شاء الله جعله في ميزان حسناتكم .. اللهم آمين يارب العالمين

ولكن

الكود الخاص بأخي في الله sajad لم يعمل معي .
والكود الخاص بأخي سعود بارك الله فيه قام بإخفاء ال Picturebox .

ان شاء الله اكتب لكم الاكواد الخاصة بي والمكتبات التي استخدمها حتى تكونوا على بينة من الامر ان شاء الله

اعتذر عن اشغالي لوقتكم .. جزاكم الله خيرا
الرد }}}}
تم الشكر بواسطة:
#5
بسم الله الرحمن الرحيم

كود :
Imports System.Data
Imports System.Data.OleDb
Imports System.IO
Imports System.Drawing.Image

كود :
Public Class Form5

    Dim ds As New DataSet
    Dim dt As New DataTable("users")
    Dim ConStr As String = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
    "Data Source =" & Application.StartupPath & "\cobra.mdb"
    Dim Conn As New OleDbConnection(ConStr)
    Dim DataSet1 As New DataSet
    Dim SQLstr As String = "SELECT * FROM users"
    Dim m As String


    Private Sub Form5_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        Static m As Integer = 0
        Conn.Open()
        Dim DataAdapter1 As New OleDbDataAdapter(SQLstr, Conn)
        DataAdapter1.Fill(DataSet1, "users")
        Conn.Close()


    End Sub

كود :
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        If OpenFileDialog1.ShowDialog() = Windows.Forms.DialogResult.OK Then
            PictureBox4.Load(OpenFileDialog1.FileName)
        End If
    End Sub

كود :
Private Sub TextBox1_TextChanged(sender As Object, e As EventArgs) Handles TextBox1.TextChanged
        Select Case ComboBox1.Text

            Case "رقم التعريف"
                On Error Resume Next
    
        
                    Dim MyRows() As DataRow = DataSet1.Tables("users").Select("ID LIKE '%" & Trim(TextBox1.Text) & "%'")
                    Dim FoundRows As DataTable = DataSet1.Tables("users").Clone
                    Dim dr As DataRow
                    For Each dr In MyRows
                        FoundRows.ImportRow(dr)
                    Next

                    DataGridView1.DataSource = FoundRows

                    Dim i As Integer
                    i = DataGridView1.CurrentRow.Index

                    Me.TextBox2.Text = DataGridView1.Item(1, i).Value
                    Me.TextBox3.Text = DataGridView1.Item(2, i).Value
                    Me.TextBox4.Text = DataGridView1.Item(3, i).Value
                    Me.TextBox5.Text = DataGridView1.Item(4, i).Value
                    Me.TextBox6.Text = DataGridView1.Item(5, i).Value
                    Me.TextBox7.Text = DataGridView1.Item(6, i).Value
                    Me.TextBox8.Text = DataGridView1.Item(7, i).Value
                    Me.TextBox9.Text = DataGridView1.Item(8, i).Value
                    Me.TextBox10.Text = DataGridView1.Item(9, i).Value
                    Me.TextBox11.Text = DataGridView1.Item(10, i).Value
                  
                    PictureBox4.DataBindings.Add("image", DataSet1, "users.photo", True).ToString()
                    Me.Button2.Enabled = True
                    Me.Button8.Enabled = True

        End Select
    End Sub

هذا هو الكود المستخدم مع إضافة السطر الخاص بأخي سعود ..

والكود الخاص بأستاذي sajad فقد استخدمته كالتالي :

كود :
Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click
        Dim row As DataRow
        row = DirectCast(dt.Select("ID like'%" & "wwww" & "%'").GetValue(0), DataRow)
        PictureBox4.Image = Image.FromStream(New MemoryStream(DirectCast(row("photo"), Byte())))

    End Sub

ارجو ان اكون قد اوضحت طريقة عملي ..

شكر الله لكم ،،،
الرد }}}}
تم الشكر بواسطة:
#6
بسم الله الرحمن الرحيم

لوجه الله عز وجل ..

أرجوكم اجيبوني يا اخواني لأنه قد أرهقت من كثرة البحث والتجارب .
قمت بتجربة كود أخي sajad مرة أخرى على مشروع منفصل مع بعض الاضافات ولكن لم يعمل أيضا . تخرج رسالة خطأ مفادها :
"Cannot find column [ ID ]f"
وهكذا مع جميع الأعمدة .
شكرا مره اخرى ،،
الرد }}}}
تم الشكر بواسطة:
#7
[COLOR="#800000"]السلام عليكم

عدل كود الLoad للForm الى

PHP كود :
Private Sub Form5_Load(sender As ObjectAs EventArgsHandles MyBase.Load
        
Static As Integer 0
        Conn
.Open()
        
Dim DataAdapter1 As New OleDbDataAdapter(SQLstrConn)
        
DataAdapter1.Fill(DataSet1"users")
        
Conn.Close()

dt=DataSet1.Tables("users")
    
End Sub 

ومن ثم جرب

سؤال: هل حقل الID هي int أم string؟

يجب اسناد الجدول بعد ملئ الdataset

[/COLOR]
الرد }}}}
تم الشكر بواسطة:
#8
بسم الله الرحمن الرحيم

شكرا لك اخي sajad لكن ظهرت رسالة خطأ أخرى مفادها

An unhandled exception of type 'System.NullReferenceException' occurred in picture.exe

Additional information: Object reference not set to an instance of an object.
الرد }}}}
تم الشكر بواسطة:
#9
اخي العزيز اقرأ الرد مرة اخرى فقد عدلت الكود مرة اخرى
الرد }}}}
تم الشكر بواسطة:
#10
بسم الله الرحمن الرحيم

اخي sajad هل سأثقل عليك اذا طلبت منك مثال جاهز اتعلم منه ؟
يرضى الله عنك ويبارك لك في علمك وعالمك
الرد }}}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  مشكلة في تصميم قاعدة البيانات djelloul 2 35 06-12-16, 12:36 PM
آخر رد: djelloul
  بحث و إظهار صورة من قاعة البيانات علىPictureBox ahmed_elwerfalli 0 40 29-11-16, 01:34 AM
آخر رد: ahmed_elwerfalli
  [سؤال] كيفية اضافة عناصر عمود فى جدول من قاعدة بيانات فى جدول اخر hidn 1 173 04-11-16, 09:25 AM
آخر رد: thevirus
  [VB.NET] مثال على جلب ارقام من قاعدة البيانات وحفظها في مصفوفة بدر إشتية 4 354 02-11-16, 02:42 AM
آخر رد: Ahmad ahmed
  [سؤال] قراءة رابط من قاعدة بيانات في ادة التصفح شمس الدين 03 2 84 27-10-16, 10:43 PM
آخر رد: شمس الدين 03
  مساعدة في بناء قاعدة hglogtd 4 137 05-10-16, 03:48 PM
آخر رد: hglogtd
  استفسار حول طريقتي في قاعدة البيانات صبري زينوبي 0 81 29-09-16, 04:35 PM
آخر رد: صبري زينوبي
  ربط قاعدة بيانات اكسس بفجوال دوت نت 2015 كنونو 0 125 26-09-16, 01:35 PM
آخر رد: كنونو
  تسمية قاعدة البيانات قبل انشائها aiman 3 175 15-09-16, 09:12 PM
آخر رد: Abu Ehab
  [Acces2003] المساعدة في كود لحذف البيانات من الاستعلام محمد خلف زكي 2 144 28-08-16, 11:24 AM
آخر رد: محمد خلف زكي

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


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