mam problem (oczywiście pytanie :)Nazwa typu {myUserControl} nie istnieje w rodzaju {myNamespace.myNamespace}
Mam project-- myproject ... stąd reszta projektu używa domyślnej dowolnej klasy jako przestrzeni nazw "MyProject" ... nie ma problemu.
W moim projekcie utworzyłem niestandardową kontrolę użytkownika, która ma wiele innych elementów sterujących (etykieta, pola tekstowe itp.). Zatem ta klasa jest TAKŻE w domyślnym obszarze nazw "MyProject". Wszystkie kompilacje nie stanowią problemu. Tylko w celu potwierdzenia widoczności zasięgu, na tej kontroli użytkownika, upewniłem się, że kod DESIGNER i Code-Behind (Mój kod) są OBU w obrębie tej samej przestrzeni nazw "MyProject" (są), ORAZ są to odpowiednio PUBLICZNA CZĘŚCIOWA KLASA MyUserControl .
Teraz problem. Tworzę prosty formularz (również domyślnie w przestrzeni nazw "MyProject"). Z przybornika istnieje "MyUserControl", więc przeciągam go na MyNewForm. Przeciąganie/upuszczanie jest w porządku.
Zapisz wszystko, skompiluj, zawieść ... Projektant dodaje dodatkowe odwołanie do "MyProject", dzięki czemu wygląda na to, że kontrola użytkownika znajduje się w MyProject.MyProject.MyUserControl .. zamiast MyProject.MyUserControl.
Jak tylko ręcznie usunę dodatkowy "MyProject.", Zapisz i skompiluj, wszystko jest w porządku. Jeśli jednak ponownie edytuję formularz, zmieniam coś, M $ zmieni go z powrotem w oryginalne odniesienie "MyProject.MyUserControl".
Wszystko powiedział, że tu są to fragmenty z mojego projektu ...
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;
}
Następnie w definicji MyUserControl mam ...
namespace MyProject
{
public partial class MyUserControl : UserControl
...
}
i od MyUserControl przez Designer ...
namespace MyProject
{
public partial class MyUserControl : UserControl
...
}
Dzięki za pomoc ...
ŁADOWANIA podziękowań. – Larry
Dzieje się tak również wtedy, gdy masz klasę w przestrzeni nazw o tej samej nazwie co jej przestrzeń nazw. – greenskin