I've been having this problem for many months now and I simply can't find a way to reproduce it. The problem will occur when I change between open documents by clicking on their tabs. 9 out of 10 times, it just works, but on some occasions, the control will interpret the click as drag operation, so when I move the mouse after having clicked the tab, the tab follows the mouse, as if I'm trying to move/float it. I _think_ that this might occur if my application is doing something else in the background on another thread, e.g. with a BackgroundWorker, but as you can imagine, this is pretty difficult to reproduce.
At one point I suspected the code I have in PrimaryWindowChanged was the problem, because they did some time consuming processing (no more than ~50-100 ms though), but I have tried putting in a huge Thread.Sleep() in a sample app and this doesn't do the trick.
I have spent many hours trying to make a sample, or at least get my own application to do this consistently, but with no luck - the bug is very periodic. Any suggestions on how to get around this problem would be _highly_ appreciated. I'm desperate, to say the least, so I'm willing to try pretty much anything. Hope you will help :)