为什么我的新windows窗体被强制进入Builder命名空间



我正在Visual Studio中处理一个Windows窗体项目。目前大约有15种不同的形式,每种形式都在名称空间foo中。例如:

using System;
using System.Windows.Forms;
namespace foo
{
public FormSelectProject() : Form
{
InitializeComponent();
}
...
}

这很好用。当我今天创建一个新表单时,默认使用的不是名称空间foo,而是名称空间生成器。因此:

using System;
using System.Windows.Forms;
namespace Builder
{
public FormCreateFeature() : Form
{
InitializeComponent();
}
...
}

如果我将Builder名称空间更改为foo,我会得到错误CS0103The name 'InitializeComponent' does not exist in the current context.

我可以通过在表单顶部添加using foo;来解决这个问题,但我只是好奇为什么会发生这种情况,尤其是因为其他表单的加载仍然很好。

以上归功于@mjwills。我只更改了FormCreateFeature.cs文件中的命名空间,而没有更改FormCreateFeature.Designer.cs文件。更改两者都解决了问题。

最新更新