المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : backgroundworker problem



C# Programming
08-26-2009, 12:30 AM
could someone point out what I am doing wrong that the reportProgress method is not working.


BackgroundWorker bw = new BackgroundWorker();

public Control()
{
bw.WorkerReportsProgress = true;
bw.WorkerSupportsCancellation = true;
bw.DoWork += new DoWorkEventHandler(bw_DoWork);
bw.ProgressChanged += new ProgressChangedEventHandler(bw_ProgressChanged);
bw.RunWorkerCompleted += new RunWorkerCompletedEventHandler(bw_RunWorkerCompleted);
}
void bw_ProgressChanged(object sender, ProgressChangedEventArgs e)
{
//do updates
}
void bw_DoWork(object sender, DoWorkEventArgs e)
{
BackgroundWorker worker = sender as BackgroundWorker;
if ((worker.CancellationPending == true))
{
e.Cancel = true;

}
else
{
//work code removed
totalnumbersoffiles = XmlFiles.Count;
for (int filecount = 0; filecount < XmlFiles.Count; filecount++)
{
//work code removed
bw.ReportProgress(filecount);
}
}
}