I've got a C# SCSF application using Telerik WinForms UI conrols that has some long running UI operations that lock up the main UI thread for a few seconds. I do as much background processing on background threads as I can, However some of the databinding and list loading operations cause up to a 5 second halt on the UI Thread. In order to make the process seem more fluid, a popup view is launched on another UI Message loop that has a message and a spinning indicator.
Using this method has its drawbacks however, as windows can get in-between the main window and the popup form since they're not on the same thread, and I can't use the main form as an owner to the form on the other message loop.
I was toying with using something like SetWindowPws(MainForm.Handle, PopupForm.handle...) to set the main form's z-order under the popup form on a timer or something, but I've been unable to get it to work properly.
Does anyone have any idea if this approach would work? If so, ideas on how to best manage it?