2010-02-15 7 views
7

Istnieje świetna biblioteka, którą znalazłem here. Jest to AeroWizard zrobione w Windows Forms i elegancko obsługuje Aero Basic. To, co niesamowite, ma mieć wsparcie projektanta. Gdy próbuję otworzyć dowolny z WizardPages w próbce Designer Form, otrzymuję ten błąd:Czy istnieje sposób użycia niestandardowego elementu sterującego w projektancie i uniknięcia GAC?

Could not find type 'Aero.Controls.MainInstructionsLabel'. Please make sure that the assembly that contains this type is referenced. If this type is a part of your development project, make sure that the project has been successfully built using settings for your current platform or Any CPU.

Biblioteka jest odwołanie w moim projekcie pod Aero.Controls i Aero.Wizard, więc nie jestem pewien, co jest nie tak.

Czy muszę GAC zarejestrować zespół, aby uzyskać wsparcie projektanta?

Edit: Właśnie sprawdziłem z odbłyśnikiem, oto odnośniki

Aero.Controls
mscorlib
systemu
System.Drawing
System.Windows.Forms
user32.dll

Aero.Wizard
mscorlib
systemowe
System.Drawing
System.Windows.Forms
dwmapi.dll
Gdi32.dll
user32.dll
Uxtheme.dll

Nic oprócz rodzimej biblioteki DLL dotyczy mnie, ale ja don zobaczymy, jak uniemożliwiłoby to renderowanie formularza w Projektancie.

Oto screen-shot od autora: alt text http://www.ceasetopanic.com/wp-content/uploads/2010/02/compile-error.jpg

Odpowiedz

3

Program Visual Studio nie powinien mieć problemu ze znalezieniem formantu i załadowaniem go, o ile projekt korzystający z niego odwołuje się do biblioteki DLL. Możesz spróbować zbudować projekt, a następnie zamknąć i ponownie otworzyć Visual Studio. Nie ma potrzeby, aby zespół był w GAC.

Możesz również spróbować otworzyć zespół w Reflectorze, aby sprawdzić, czy nie odnosi się do innych zespołów, których nie masz. Jeśli Aero.Controls odwołuje się do innego zestawu, do którego nie odwołujesz się, a Visual Studio nie może go znaleźć podczas sondowania, zobaczysz tego rodzaju błąd i GAC-owanie zestawów wymienionych powyżej nie naprawi tego.

+1

To brzmi jak problem, którego nie można znaleźć w innym zestawie referencyjnym. – kyoryu

+0

Okazuje się, że zespół został podpisany, brakuje pliku "snk" w moim folderze lib, skopiowałem go ze źródła, a teraz projektant ładuje jsut dobrze. – Chris

1

Visual Studio musi być w stanie je znaleźć. Zwykle oznacza to GAC, jednak można użyć sztuczki używam here on my blog, aby oszukać aplikację do szukania w innym miejscu. Używałem go do oszukania perspektywy, aby znaleźć nasze biblioteki dll podczas pisania dodatków. Osobiście uważam, że GAC może być mniej bóle głowy pod względem konserwacji.

Powiązane problemy