試圖將一個通用的自定義控件移動到一個新的類庫(也嘗試了一個新的Web項目),以便其他項目可以使用它,但它的屬性是在另一個項目中使用時始終爲NULL。不幸的是,搜索類似的問題並不能解決我的問題。從另一個項目/ DLL引用的Asp.NET用戶控件具有NULL屬性
我註冊在我們web.base.config新的控制項目-A
<add tagPrefix="Controls" namespace="Comp.UserWebControls.Controls" assembly="Comp.UserWebControls" />
添加爲項目-A項目引用的Comp.UserWebControls(我也嘗試添加構建DLL作爲在Project-A的基準,沒有區別)
的標記看起來像
<asp:Content ID="Content4" ContentPlaceHolderID="RightPlaceHolder" runat="server">
<Controls:uxMyControl ID="TestingThing" runat="server" />
在後面的代碼中,「TestingThing」控件被實例化,但所有屬性均爲null(標籤,文本框等)
通常,如果控件位於同一項目(Project-A)內,這樣的控制:
<add tagPrefix="Contols" tagName="uxMyControl" src="~/Controls/uxMyControl.ascx"/>
而在代碼隱藏控制對象看起來不錯,性能實例化並如預期工作。
我不能做src="myPath"
當使用程序集,所以我認爲這與它有關。
我該如何將此控件分離出來以便其他項目可以使用它。
任何幫助,將不勝感激謝謝!
您是否將'.ascx'文件本身包含到您想要使用自定義控件的其他項目中? –
This SO threads may help you - http://stackoverflow.com/questions/709617/using-user-controls-from-other-projects-in-asp http://stackoverflow.com/questions/10340610/asp -net-user-control-instance-null-when-referenced-on-page-load-on-page-code –
@ChandanRoy - 是的,我把用戶控件的整體移到了新項目中。 我很想看看這個鏈接,謝謝 – Jerrold