SoFunction
Updated on 2025-03-06

C# to completely delete files

public partial class Form1 : Form 

       private Thread dfileThread = null; 
       private string fileObjectPath = ; 
       private bool isFile = true; 
       public delegate void DefaulEventDelegate(object sender, EventArgs e); 
       public Form1() 
       { 
           InitializeComponent(); 
       } 
       private void btnSelectFile_Click(object sender, EventArgs e) 
       { 
           isFile = true; 
          this.openFileDialog1 = new OpenFileDialog(); 
          = true; 
= "Please select file";
= "All files (*.*)|*.*";
          if (() == ) 
           { 
              = ; 
           } 
          fileObjectPath = (); 
       } 
       private void btnSelectFolder_Click(object sender, EventArgs e) 
       { 
           isFile = false; 
           this.folderBrowserDialog1  = new FolderBrowserDialog(); 
= "Please select the file path";
           if (() == ) 
           { 
               = ; 
           } 
           fileObjectPath = (); 
       } 
       private void btnAbsoluteDelete_Click(object sender, EventArgs e) 
       { 
           = true; 
           if((fileObjectPath)) 
           { 
("Please select the files and folders to smash!");
               return; 
           } 
           AbsoluteFile dfile = new AbsoluteFile(); 
           += new EventHandler(Dfile_DeleteErrorEvent); 
           if (isFile) 
           { 
               += new EventHandler(Dfile_FinishDeleteFileEvent); 
               dfileThread = new Thread(new ParameterizedThreadStart()); 
               = true; 
               (fileObjectPath); 
           } 
           else 
           { 
               += new EventHandler(Dfile_FinishDeleteFolderEvent); 
               dfileThread = new Thread(new ParameterizedThreadStart()); 
               = true; 
               (fileObjectPath); 
           } 
= @"Delete...";
       } 
       void Dfile_DeleteErrorEvent(object sender, EventArgs e) 
       { 
           if (!) 
           { 
               ((sender as AbsoluteFile).ErrorString); 
           } 
           else 
           { 
               (new DefaulEventDelegate(Dfile_DeleteErrorEvent), new object[] { sender, e }); 
           } 
       } 
       void Dfile_FinishDeleteFolderEvent(object sender, EventArgs e) 
       { 
           if (!) 
           { 
               = false; 
("Delete is completed!");
           } 
           else 
           { 
               (new DefaulEventDelegate(Dfile_FinishDeleteFolderEvent),new object[] { sender,e }); 
           } 
       } 
       void Dfile_FinishDeleteFileEvent(object sender, EventArgs e) 
       { 
           if (!) 
           { 
               = false; 
("Delete is completed!");
           } 
           else 
           { 
               (new DefaulEventDelegate(Dfile_FinishDeleteFileEvent), new object[] { sender, e }); 
           } 
       } 
}