View Full Version : سوال: حذف فایل
  
Mohamad_Gha3mi
دوشنبه 25 بهمن 1389, 10:42 صبح
سلام به همگی...
 
دوستان من یک سری عکس رو توی چندتا PictureBox توی فرمم نشون میدم.
 
میخوام وقتی با کلیک راست روی PicureBox و زدن دکمه حذف، فایل رو از روی هارد حذف کنم به طوری که هم
 
 فایل عکس پاک بشه هم یکی از PicureBoxهام کم بشه. که پیغام خطا ی (فایل مورد نظر توسط یک پراسس 
 
دیگه داره استفاده میشه) رو میده!
 
پراسس دیگه همین برنامه خودمه؟
 
فایل رو چطور پاک کنم؟
hi level hdd
دوشنبه 25 بهمن 1389, 11:30 صبح
سلام برای حذف فایل 
اول باید عکس داخل pictureBox را برابر null کنی
تا ازت خطا نگیره و بعد اگه آدرس عکسو داری از دستور زیر استفاده کن
system.io.file.delete() و آدرس فایلو داخل پرانتز بنویس . حتما مقدار Image  در PictureBox
باید null شود برای حذف خود PictureBox هم اسمشو صدا بزن و تابع Dispose() مربوط به اونو فراخونی کن
Mohamad_Gha3mi
دوشنبه 25 بهمن 1389, 11:43 صبح
ممنونم ولی مشکل هنوز حل نشده
 
کدی که نوشتم اینه
 
DirectoryInfo ArchivePath = new DirectoryInfo(@"c:\Pic");
foreach (FileInfo fi in ArchivePath.GetFiles())
ArchiveDataGridView.Rows.Add(IconReader.GetFileIco n(fi.FullName, IconReader.IconSize.Large, false), fi.Name, Image.FromFile(fi.FullName), null, fi.FullName);
 
البته توی این کد عکس ها رو در یک GridView که نمایش میدم
 
66335
 
 من هم Cells[2] مورد نظر که داره عکس رو نشون میده null کردم نشد و هم کل رکورد رو حذف کردم ولی هنوز همون ارور رو میده
shuriken
دوشنبه 25 بهمن 1389, 12:05 عصر
البته اگه اول خود Picturebox رو Dispose بکنی بعد فایلو پاک کنی احتمال ایجاد خطا کمتر هم میشه
hi level hdd
سه شنبه 26 بهمن 1389, 11:28 صبح
سلام
کد
ArchiveDataGridView.Rows.Add(IconReader.GetFileIco n(fi.FullName, IconReader.IconSize.Large, false), fi.Name, Image.FromFile(fi.FullName), null, fi.FullName);
اگه این کد مربوط به نمایش عکستونه میتوانید شماره سطرشو پیدا کنید
و مقدارشو برابر null کنید. البته من با ArchiveDataGridView کار نکردم
 
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.