public class Test
> {
>
> public static ManualResetEvent re = new ManualResetEvent(false);
>
> public void Doit()
> {
> var bg36 = new BackgroundWorker();
> bg36.DoWork += bg36_DoWork;
> bg36.WorkerReportsProgress = true;
> bg36.ProgressChanged += bg36_ProgressChanged;
> bg36.RunWorkerAsync();
>
> }
>
> private void bg36_ProgressChanged(object sender, ProgressChangedEventArgs e)
> {
> if ((string)e.UserState== "save ledgers")
> {
> SaveLedgers();
> Test.re.Set();
> }
> }
>
> public void SaveLedgers()
> {
> }
>
> private void bg36_DoWork(Object sender, DoWorkEventArgs e)
> {
> BackgroundWorker bw = (BackgroundWorker)sender;
> bw.ReportProgress(0,"save ledgers");
> Test.re.WaitOne();
> //Continue
> }
>
> }
If things have the tendency to go your way, do not worry. It won't last. Jules Renard.