我已经将一些旧的(不是我自己的)代码引入了我想要修改的新解决方案。我是C#的新手,所以如果我的术语不正确或遗漏了任何明显的东西,我会道歉。
我有一个主要表单MainForm.cs和自定义组件CustomComponent.cs,它继承了PropertyGrid。 CustomComponent位于MainForm中。
我收到错误:
The type name 'MainNameSpace' does not exist in the type 'MainNameSpace.MainNameSpace'
在MainForm.Designer.cs中,我有生成的代码:
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
// stuff
this.customComponent1 = new MainNameSpace.MainNameSpace();
// more stuff
}
如果我手动进入并将其更改为“new MainNameSpace();”它工作得很好。我不知道为什么名称空间的名称会被添加两次。我尝试检查.resx文件是否有任何可疑但没有看到任何内容,而不是我知道要查找什么。有一个很好的起点可以看吗?我已经进入了MainForm,CustomComponent,以及我能想到的其他一切寻找罪魁祸首,但没有找到任何看起来像罪魁祸首的东西。关于我应该在哪里寻找/寻找什么的任何想法?我觉得问题出在CustomComponent.cs中,但我不知道。
CustomComponent.cs:
namespace MainNameSpace
{
public partial class MainNameSpace : PropertyGrid
{
public MainNameSpace()
{
InitializeComponent();
}
// other stuff
}
}
谢谢!
答案 0 :(得分:1)
之前我遇到过这个问题,我很确定这些问题是:
namespace MainNameSpace
{
public partial class MainNameSpace : PropertyGrid
{
命名空间和类不能具有相同的名称,因为它不知道您正在调用哪一个。尝试更改命名空间或类名,它应该可以工作。
希望这有帮助!