barman.ar16
جمعه 04 آبان 1397, 21:54 عصر
سلام دوستان
من توی برنامه برای ذخیره عکس دانش آموزان از روش کپی فایل درون یک پوشه کنار پروژه با نام کدملی هر کدام استفاده کردم (برای جلوگیری از بالا رفتن حجم دیتابیس)
خب برای درج عکس ابتدا یک فرم نمایش میدم که اطلاعات دانش آموزان رو داخل دیتاگریدویو نمایش میده
و همچنین عکس هر کدام رو اینطوری پیدا می کنم و درون دیتاگریدویو کنار اطلاعاتش نمایش میدم
Bitmap img;
try
{
for (int i = 0; i < rgv.Rows.Count; i++)
{
melli = rgv.Rows[i].Cells[1].Value.ToString();
img = new Bitmap(Application.StartupPath + @"\pic" + melli + ".jpg");
rgv.Rows[i].Cells[0].Value = img;
rgv.Rows[i].Height = 100;
}
}
catch (Exception)
{
return;
}
تا اینجا مشکلی نیست
بعد با دوبار کلیک اطلاعات رو میفرستم برای فرم بعدی که میخوایم اونجا عکس رو از کاربر بگیریم
عکس رو با openfiledialoge از کاربر میگیرم و با نام کد ملی اش درون همون پوشه ذخیره می کنم
خب حالا مشکل :
اگر عکسی برای این دانش آموز وجود نداشته باشه که مشکلی پیش نمیاد اما اگر وجود داشته باشه خطا میگیره و نمیذاره عکس جدید جایگزین بشه
این خطا رو میده : که فایل در حال استفاده در جای دیگری است the file using in another process
اولش فکر کردم مشکل برای اینه که عکس رو درون یک پیکچر باکس همون فرم نمایش میدم
اما مشکل اون نیست و به خاطر اینه که قبلش عکس فراخوانی شده و درون دیتاگریدویو نمایش داده شده
حالا چطور میتونم فارغ از اون قضیه فایل جدید رو در واقع overwrite کنم
متشکرم
من توی برنامه برای ذخیره عکس دانش آموزان از روش کپی فایل درون یک پوشه کنار پروژه با نام کدملی هر کدام استفاده کردم (برای جلوگیری از بالا رفتن حجم دیتابیس)
خب برای درج عکس ابتدا یک فرم نمایش میدم که اطلاعات دانش آموزان رو داخل دیتاگریدویو نمایش میده
و همچنین عکس هر کدام رو اینطوری پیدا می کنم و درون دیتاگریدویو کنار اطلاعاتش نمایش میدم
Bitmap img;
try
{
for (int i = 0; i < rgv.Rows.Count; i++)
{
melli = rgv.Rows[i].Cells[1].Value.ToString();
img = new Bitmap(Application.StartupPath + @"\pic" + melli + ".jpg");
rgv.Rows[i].Cells[0].Value = img;
rgv.Rows[i].Height = 100;
}
}
catch (Exception)
{
return;
}
تا اینجا مشکلی نیست
بعد با دوبار کلیک اطلاعات رو میفرستم برای فرم بعدی که میخوایم اونجا عکس رو از کاربر بگیریم
عکس رو با openfiledialoge از کاربر میگیرم و با نام کد ملی اش درون همون پوشه ذخیره می کنم
خب حالا مشکل :
اگر عکسی برای این دانش آموز وجود نداشته باشه که مشکلی پیش نمیاد اما اگر وجود داشته باشه خطا میگیره و نمیذاره عکس جدید جایگزین بشه
این خطا رو میده : که فایل در حال استفاده در جای دیگری است the file using in another process
اولش فکر کردم مشکل برای اینه که عکس رو درون یک پیکچر باکس همون فرم نمایش میدم
اما مشکل اون نیست و به خاطر اینه که قبلش عکس فراخوانی شده و درون دیتاگریدویو نمایش داده شده
حالا چطور میتونم فارغ از اون قضیه فایل جدید رو در واقع overwrite کنم
متشکرم