Jorgie said:
I think you are looking for:

Cursor.Current = Cursors.WaitCursor;

And to reset it:

Cursor.Current = Cursors.Default;

Thanks for all the suggestions. I tried both approaches and found that they don't work. I suspect that there is some sort of bizarre interaction going on because I am using System.ComponentModel.BackgroundWorker in the progress dialog box to fire the Finished event (absolutely critical when the user hits the cancel button and the form closing <> finished) to the main form.

I have a sneaking suspicion that there's a good reason for the cursor problem but alas, Raymond Chen does not come in a Visual Basic .NET edition.