VS2010设计器窗口正在执行我的表单

时间:2014-01-04 17:36:21

标签: c# visual-studio-2010 designer

我是疯了还是这是正常的操作。 Visual Studio 2010 SP1。

我有一个.NET 3.5(C#)基本表单,其中包含一些继承的类。每当我在设计器视图中打开继承的表单时,它实际上开始运行我的代码......我甚至没有执行或调试。

实施例: 我需要我的表单来启动一个在FormLoad事件中创建的命名管道服务器。每当我在设计器视图中打开表单时,它实际上都会启动管道服务器。

也许我只是不完全理解设计师的观点是如何运作的?

编辑:我知道它实际上正在运行,因为我正在尝试调试我的管道代码,每次打开设计器窗口时,它都会开始向我抛出管道异常。我还可以通过进程资源管理器看到,当我没有调试时,devenv.exe正在启动我的管道实例。

1 个答案:

答案 0 :(得分:1)

是的,设计师实际上正在“运行”您的表单。

如果你想避免这种情况,只需将你的关键代码放在if块中,如下所示:

if(!this.DesignMode) //this is the Form
{
....
}

干杯