Próba przeniesienia wspólnego kontrolki niestandardowej do nowej biblioteki klas (także wypróbowania nowego projektu WWW), aby inne projekty mogły z niego korzystać, ale jej właściwości są zawsze NULL, gdy jest używany w innym projekcie. Szukanie podobnych pytań niestety nie pomoże rozwiązać mojego problemu.Kontrola użytkownika Asp.NET, do której odwołuje się inny projekt/dll ma właściwości NULL
zarejestrować nową kontrolę w naszej web.base.config Project-A
<add tagPrefix="Controls" namespace="Comp.UserWebControls.Controls" assembly="Comp.UserWebControls" />
dodaje jako odniesienie projektu w Project-A Comp.UserWebControls (próbowałem również dodanie dll kompilacji jako odniesienie w Project-A, nie ma różnicy)
znaczniki wygląda
<asp:Content ID="Content4" ContentPlaceHolderID="RightPlaceHolder" runat="server">
<Controls:uxMyControl ID="TestingThing" runat="server" />
W kodzie źródłowym tworzona jest kontrola "TestingThing", ale wszystkie właściwości mają wartość NULL (Etykiety, pola tekstowe itp.).
Zwykle, jeśli kontrola była w obrębie tego samego projektu (projekt-A), wówczas powinienem zarejestrować kontrola taka jak ta:
<add tagPrefix="Contols" tagName="uxMyControl" src="~/Controls/uxMyControl.ascx"/>
W kodzie obiekt kontrolny wygląda dobrze, właściwości są tworzone i działają zgodnie z oczekiwaniami.
Nie mogę wykonać src="myPath"
podczas korzystania z zespołu, więc myślę, że ma to coś wspólnego z tym.
W jaki sposób mogę oddzielić tę kontrolę od nowego zestawu/projektu/rozwiązania, aby inne projekty mogły z niego korzystać.
Każda pomoc zostanie doceniona dzięki!
Czy umieściłeś plik '.ascx' w innym projekcie, w którym chcesz użyć niestandardowego formantu? –
Te wątki SO mogą Ci pomóc - http://stackoverflow.com/questions/709617/using-user-controls-from-other-projects-in-asp http://stackoverflow.com/questions/10340610/asp -net-user-control-instance-is-null-when-referenced-on-page-load-on-page-code –
@ChandanRoy - Yup i przeniosłem kontrolę użytkownika w całości do nowego projektu. Sprawdzam ten link dzięki – Jerrold