Hello all, I have a very difficult problem to diagnose 🙂
We have a program that creates several panels on top of each other, and calls BringToFront on the one that it wants to be on top. However, it appears that this isn’t working correctly. Instead, one of the underneath-panels remains on top, but the text on various buttons and labels isn’t being drawn. It’s as if the paint routines know that the panel isn’t on top, and don’t paint it, but the panel really is on top, so various things that don’t need to be repainted are drawn. Or something like that.
I suspect that I’m running into some very special case , like BringToFront doesn’t work if there are a certain number of panels, and one of them has a particular control on it with some particular set of characteristics… Maybe.
Unfortunately, I can’t reproduce it in a test program. Every test program I’ve written works exactly as expected. I can’t easily just whittle our program down into a test program either, because instructions for drawing the screens are sent to it from an app on the server. I do have a plan for narrowing it down, but it will require significant effort and hacking.
Is there something straightforward that I can do on the client side to debug this?
The call to BringToFront() changes the z-index of the <div> that represents the panel. There are cases where the browser gets messed up with z-indexes. Are you using Chrome? You can verify the <div> z-index with F12, and you can fiddle with it to see if it changes.
Can you email me a link that I can access with Chrome? support or gianluca at iceteagroup.com.