سلام خدمت اساتید گرامی
بنده یک برنامه مدیریت باشگاه ورزشی با C# پیاده سازی کردم که پروژه دانشگاهم هستش . تصاویر رو ازطریق فرم ثبت نام از کاربر میگیره و بصورت ارایه بایت در دیتابیس ذخیره میکنه، تا اینجا که مشکلی نداره!
حالا در فرم نمایش لیست اعضا یک دیتاگرید ویو ساختم که وقتی کاربر روی هر سطر از دیتاگرید کلیک میکنه تکست باکس های پایین پربشه و تصویرشو براساس id از دیتابیس بخونه و در picturebox نمایش بده.
ولی فقط متن هارو میخونه و در picturebox فقط آخرین عکس اضافه شده به دیتابیس رو برای همه سطرها لود میکنه(یعنی نمیتونه براساس id هر سطر عکس رو بخونه) میخوام تصویر مخصوص هر کاربر رو بیاره تو picturebox.
پ.ن : تمام تاپیک های مربوط به این مشکل رو خوندم ولی کدها برای من کارنکرد! اگه ممکنه روی کد خودم اعمال کنید تغییرات رو . خیلی ممنونم!
تصویر : http://uupload.ir/files/9ptj_capture.png
کد تابع خواندن تصویر از دیتابیس:
void Showpic()
{
sqlcon = new SqlConnection("data source=. ; initial catalog=GYMDB ; integrated security=true");
sqlcon.Open();
sqlcom = new SqlCommand("select avatar_pic from Members", sqlcon);
ds.Clear();
sqlcom.Parameters.AddWithValue("@p1", dataGridViewX1.SelectedRows.ToString());
byte[] myarray = null;
SqlDataReader DataR = sqlcom.ExecuteReader();
if (DataR.HasRows)
{
while (DataR.Read())
{
myarray = (byte[])DataR["avatar_pic"];
}
}
DataR.Close();
System.IO.MemoryStream mymemory = new System.IO.MemoryStream(myarray);
pictureBox1.Image = Image.FromStream(mymemory);
sqlcom.ExecuteNonQuery();
sqlcon.Close();
}