Reputation: 8350
The user will be able to search for some document in the local machine and i want to show user, a progress bar during my program searches. To be more clear, i have foreach loop for which i want to tie up my progress bar to show the progress. my foreach loop and progress should work simultaneously. Is this possible to do ?
Upvotes: 2
Views: 7333
Reputation: 166596
From ProgressBar Class
You can try something like
private void CopyWithProgress(string[] filenames)
{
// Display the ProgressBar control.
pBar1.Visible = true;
// Set Minimum to 1 to represent the first file being copied.
pBar1.Minimum = 1;
// Set Maximum to the total number of files to copy.
pBar1.Maximum = filenames.Length;
// Set the initial value of the ProgressBar.
pBar1.Value = 1;
// Set the Step property to a value of 1 to represent each file being copied.
pBar1.Step = 1;
// Loop through all files to copy.
for (int x = 1; x <= filenames.Length; x++)
{
// Copy the file and increment the ProgressBar if successful.
if(CopyFile(filenames[x-1]) == true)
{
// Perform the increment on the ProgressBar.
pBar1.PerformStep();
}
}
}
EDIT
For longer running task, you might also consider using BackgroundWorker Class
Upvotes: 4