Notes on "The Designer Ate My Form!" Problem

I've just noticed a couple of posts about issues in the designer where controls lose their position or disappear completely. As book author Matthew Adams cleverly points out, this phenomenon is excessively difficult to reproduce but unfortunately happens all to frequently.

We heard about and read about this problem many times since Visual Studio shipped. Unfortunately, until we had some sort of a relatively-consistant repro, we couldn't do anything about it. The designer is very complex and is a mixture of .NET Framework, Visual Studio, CLR, and project system (e.g. C# or VB) pieces working together. So there are enough possible points of failure that the symptom wasn't enough info with which to determine a cause. And we didn't see this in our internal testing, which is how it got shipped in the first place.

What we did surmise was that it was something to do with the C# project system, because anecdotally, all the reports we'd seen were on that environment. But it wasn't enough. We even went so far as to spam some newsgroups and distribution lists asking for someone who could make this happen. No luck, and we continued to hear about it which was very frustrating since we didn't have an answer. Very frustrating...we wanted this to get resolved badly. Trust me, I dreaded going to conferences because I knew I'd get beat up about this one. Each time it would happen and I'd basically tell them "yeah, we've heard about this 50 times but don't know how to fix it", and while I was saying this I could see the Customer-Microsoft-Decoder-Ring in their head translating that into "Microsoft gives me buggy software and doesn't even care about fixing it". What's a Dev Manager to do?!?

Fortunately, we got a PSS report that it could be reproduced one out of 4 of 5 times, and narrowed it down to the interaction with the C# project system, and I believe it turned out to be a race condition in there somewhere. A fix has been issued at this point, see this post detailing the resolution, and these fixes have been put into Visual Studio 2005. The fixes will also be in any service packs that are rolled out for Visual Studio 2003.

Print | posted @ Wednesday, February 02, 2005 3:03 PM

Comments have been closed on this topic.