Skip to main content

DevExpress v24.2 Update — Your Feedback Matters

Our What's New in v24.2 webpage includes product-specific surveys. Your response to our survey questions will help us measure product satisfaction for features released in this major update and help us refine our plans for our next major release.

Take the survey Not interested

How to: Display File Operation's Progress via ProgressBarControl

  • 2 minutes to read

In the code fragment below, a DeleteFiles method removes all files contained within the directory specified by the source parameter. The ProgressBarControl is used to display the progress of file delete operations. The RepositoryItemProgressBar.Minimum and RepositoryItemProgressBar.Maximum properties are used to specify a range for the progress bar that is equivalent to the number of files to be removed. The code also uses the RepositoryItemProgressBar.Step property with the ProgressBarControl.PerformStep method, to increment the position of the progress bar as soon as a file is removed.

using System.IO;
using DevExpress.XtraEditors.Controls;
// ...
private void DeleteFiles(string source){
   if (Directory.Exists(source)){
      string[] fileEntries = Directory.GetFiles(source);
      // Initializing progress bar properties
      progressBarControl1.Properties.Step = 1;
      progressBarControl1.Properties.PercentView = true;
      progressBarControl1.Properties.Maximum = fileEntries.Length;
      progressBarControl1.Properties.Minimum = 0;
      // Removing the list of files found in the specified directory
      foreach(string fileName in fileEntries){
         File.Delete(fileName);
         progressBarControl1.PerformStep();
         progressBarControl1.Update();
      }
   }
}
// ...
DeleteFiles("d:\\Temp");