Ik heb een tot nu toe niet al te ingewikkelde website (geen web application dus) in VS2008 en .NET 3.5. Daarin zitten user controls die ik nu ff gebruik op een lege nieuwe aspx pagina zonder master. Ik drop in de designer m'n usercontrol op het form en het lijkt te werken. Wat niet werkt zijn de properties: hij geeft niet de properties die in de usercontrol zitten, maar alleen "NativeElement" (en die heb ik nooit eerder gezien).
Nu ga ik naar de source view, en dan wordt het probleem al iets erger. Ik zie dan een warning verschijnen:
De usercontrol gebruikt overigens wel properties van een type dat in een andere namespace en een andere assembly staan. Maar die assembly heb ik gereferenced in de website, getuige dat als ik een @Import directive naar die namspace toevoeg, de boel gewoon compileert, maar het lost die warning niet op.
Gevolg van deze warning is weliswaar klein - de boel werkt @ runtime gewoon prima. Maar het is wel erg storend dat ik voor iedere usercontrol nu die warning krijg, en kringeltjes onder de tag in de source editor, en als gevolg geen enkele vorm van intellisense op die controls kan gebruiken.
Voor de goede orde, m'n usercontrol heeft de designer zo in de pagina gezet:
En de @Register directive heeft ie dit van gemaakt:
Iemand een oplossing?
Nu ga ik naar de source view, en dan wordt het probleem al iets erger. Ik zie dan een warning verschijnen:
Je zou zeggen dat dat komt doordat de @Register directive er niet is, maar die is er wel en is dik in orde. Dat kan ik bewijzen doordat de website gewoon compileert en runt zonder errors. Als ik de @Register directive kapot maak, compileert ie niet, dus daar kan het niet aan liggen. Gewone asp componenten werken trouwens wel.Unrecognized tag prefix or device filter 'uc1'
De usercontrol gebruikt overigens wel properties van een type dat in een andere namespace en een andere assembly staan. Maar die assembly heb ik gereferenced in de website, getuige dat als ik een @Import directive naar die namspace toevoeg, de boel gewoon compileert, maar het lost die warning niet op.
Gevolg van deze warning is weliswaar klein - de boel werkt @ runtime gewoon prima. Maar het is wel erg storend dat ik voor iedere usercontrol nu die warning krijg, en kringeltjes onder de tag in de source editor, en als gevolg geen enkele vorm van intellisense op die controls kan gebruiken.
Voor de goede orde, m'n usercontrol heeft de designer zo in de pagina gezet:
ASP.NET:
1
| <uc1:GalleryInfo ID="GalleryInfo1" runat="server" /> |
En de @Register directive heeft ie dit van gemaakt:
ASP.NET:
1
2
| <%@ Register src="UserControls/GalleryInfo.ascx" tagname="GalleryInfo" tagprefix="uc1" %> |
Iemand een oplossing?
日本!🎌