<p>I have an object that starts a thread, opens a file, and waits for input from other classes.  As it receives input, it writes it to disk. Basically, it's a thread safe data logging class...</p>

<p>Here's the weird part. When I open a form in the designer (Visual&nbsp;Studio&nbsp;2008) that uses the object the file gets created. It's obviously running under the design time vhost process...</p>

<p>The odd thing is I've not been able to reproduce the issue in another project. I'm not sure what the rules are for code that gets executed in the designer and code that does not. For example, creating a file in a Windows Forms constructor doesn't actually create the file at design time...</p>

<p>What is the explanation? Is there a reference?</p>

There are some things you shouldn't do with the designer. I don't have any hard evidence, but I found that the Windows Forms designer hates it when you take away the default constructor from it. Just go ahead and create new overloads, but leave the empty constructor in place.
Also try to avoid doing
```
Form_Load
```
events in base classes you inherit from.