بسم الله الرحمن الرحيم
اخواني واخواتي واساتذتي الفضلاء .. بعد التحية ..
اعاني من مشكلة صغيرة تؤرقني وتقودني للجنون ..
بالتعاون مع اخي الفاضل sajad واتباعاً لإرشادته تمكنت من اتمام العمل على قاعدة بيانات MS Access والبحث داخلها واظهار محتوياتها في Datagridview ، وقمت بحفظ صور داخل قاعدة البيانات على شكل Binary وعند تشغيل المشروع تظهر الصور بشكل طبيعي داخل ال Datagridview ..
المشكلة :
بعد البحث عن معلومات شخص معين داخل قاعدة البيانات تظهر بياناته في textbox . وقمت بإضافة Picturebox لكي تظهر بداخلها صورة هذا الشخص عند البحث عنه . المشكلة انني لا استطيع اظهار صورة الشخص او استخلاصها من ال Datagridview لإظهارها في ال picturebox .
فهل من طريقة لإظهار الصور الموجودة بداخل ال Datagridview في ال Picturebox .
أو
طريقة لربط ال Picturebox بال Datagridview .
أو
مثال جاهز يشرح ذلك .
علماً بأني استخدم vb.net 2012 .
لقد بحثت طويلا عن هذا الموضوع في المنتديات العربية والاجنبية لكن لم تكلل جهودي بالنجاح .. فلجأت إليكم بعد الله عز وجل على امل ان تفيدوني ان شاء الله .
واعتذر لكم عن قلة خبرتي في مجال الدوت نت لأني كنت محبوسا داخل vb6 .
شكر الله لكم واثابكم ،،،
ممكن الجزئية الخاصة بالبحث؟
او لو انك تستخدم databindings لعرض محتويات الـ dataset في مربع صورة اكتب
كود :
picturebox1.databindings.add("image",dataset,"table.pic",true)
بسم الله الرحمن الرحيم
اشكركم جزيل الشكر لتفاعلكم معي .. وبارك الله فيكم وان شاء الله جعله في ميزان حسناتكم .. اللهم آمين يارب العالمين
ولكن
الكود الخاص بأخي في الله sajad لم يعمل معي .
والكود الخاص بأخي سعود بارك الله فيه قام بإخفاء ال Picturebox .
ان شاء الله اكتب لكم الاكواد الخاصة بي والمكتبات التي استخدمها حتى تكونوا على بينة من الامر ان شاء الله
اعتذر عن اشغالي لوقتكم .. جزاكم الله خيرا
بسم الله الرحمن الرحيم
كود :
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
ارجو ان اكون قد اوضحت طريقة عملي ..
شكر الله لكم ،،،
بسم الله الرحمن الرحيم
لوجه الله عز وجل ..
أرجوكم اجيبوني يا اخواني لأنه قد أرهقت من كثرة البحث والتجارب .
قمت بتجربة كود أخي sajad مرة أخرى على مشروع منفصل مع بعض الاضافات ولكن لم يعمل أيضا . تخرج رسالة خطأ مفادها :
"Cannot find column [ ID ]f"
وهكذا مع جميع الأعمدة .
شكرا مره اخرى ،،
بسم الله الرحمن الرحيم
شكرا لك اخي sajad لكن ظهرت رسالة خطأ أخرى مفادها
An unhandled exception of type 'System.NullReferenceException' occurred in picture.exe
Additional information: Object reference not set to an instance of an object.
اخي العزيز اقرأ الرد مرة اخرى فقد عدلت الكود مرة اخرى
بسم الله الرحمن الرحيم
اخي sajad هل سأثقل عليك اذا طلبت منك مثال جاهز اتعلم منه ؟
يرضى الله عنك ويبارك لك في علمك وعالمك