gpt4 book ai didi

c# - 类型名称 {myUserControl} 在类型 {myNamespace.myNamespace} 中不存在

转载 作者:IT王子 更新时间:2023-10-29 04:47:40 25 4
gpt4 key购买 nike

我有一个问题(显然是问题:)

我有一个项目-- MyProject...因此项目的其余部分使用任何类的默认值作为命名空间“MyProject”...没问题。

在我的项目中,我创建了一个自定义用户控件,上面有许多其他控件(标签、文本框等)。因此,该类也在“MyProject”的默认命名空间中。全部编译没问题。只是为了确认范围可见性,在此用户控件上,我确保设计器代码和代码隐藏(我的代码)都在同一个“MyProject”命名空间中(它们是),并且它们分别是 PUBLIC PARTIAL CLASS MyUserControl .

现在是问题。我创建了一个简单的表单(默认情况下也在命名空间“MyProject”中)。从工具箱中,“MyUserControl”存在,所以我将它拖到 MyNewForm 上。拖放就可以了。

全部保存、编译、失败...设计器正在添加一个额外的“MyProject”引用,从而使用户控件看起来实际上位于 MyProject.MyProject.MyUserControl .. 而不是 MyProject.MyUserControl。

只要我手动删除多余的“MyProject.”,保存并编译,一切都很好。但是,如果我重新编辑表单,更改某些内容,M$ 会将其更改回原始“MyProject.MyUserControl”引用。

综上所述,这是我项目的片段...

namespace MyProject
{
partial class MyNewForm
{
...
private void InitializeComponent()
{
// THIS is the line that has the extra "MyProject." reference
// when I manually remove it, all works perfectly
this.MyUserControl1 = new MyProject.MyUserControl();
}
}


private MyUserControl MyUserControl1;

}

然后,在我的 MyUserControl 定义中...

namespace MyProject
{
public partial class MyUserControl : UserControl
...
}

并通过设计器从 MyUserControl...

namespace MyProject
{
public partial class MyUserControl : UserControl
...

}

感谢您的帮助...

最佳答案

设计师做的还可以。

--> 您在项目的某处有一个名为 MyProject.MyProject 的命名空间。

(尝试在“类 View ”中找到它)

关于c# - 类型名称 {myUserControl} 在类型 {myNamespace.myNamespace} 中不存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1525595/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com