我有一個問題(很明顯的問題:)類型名稱{}的MyUserControl中不存在類型{} myNamespace.myNamespace
我有一個項目 - MyProject的......該項目的,因此其餘使用默認的任何類作爲命名空間「MyProject」...沒問題。
在我的項目中,我創建了一個自定義用戶控件,其上有很多其他控件(標籤,文本框等)。因此,該類也在「MyProject」的默認名稱空間內。所有編譯沒有問題。爲了確認範圍的可見性,在這個用戶控件上,我確信DESIGNER代碼和代碼隱藏(我的代碼)在同一個「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通過Designer ...
namespace MyProject
{
public partial class MyUserControl : UserControl
...
}
感謝您的幫助...
LOADS的感謝。 – Larry 2011-09-30 13:34:09
當您在某個名稱空間中使用與名稱空間相同的名稱類時,也會發生這種情況。 – greenskin 2013-06-20 10:34:30