我注意到,在System.Web.UI.WebControls命名空間中的大多數(如果不是全部的話)標準Web控件上,您可以添加任何您想要的屬性而不會崩潰這一頁。允許在服務器/ usercontrol上的任何屬性/屬性
以asp:Button控件爲例。
此代碼是完全合法:
<form runat="server">
<asp:Button runat="server" Text="Test button" crapAttribute="crapValue" />
</form>
現在,我已經有了,如果我添加任意屬性,它出故障的自定義服務器控件。它只接受定義了相應公共屬性的屬性。
我得到的錯誤是這樣的「該控件沒有名爲」crapAttribute「的公共屬性」。
我想我的自定義控件接受任何屬性而不會崩潰。我需要做些什麼才能工作?
我已經看過Reflector中的標準控件,它們具有各種屬性和東西,但是我沒有看到立即引起我注意的東西。
我的自定義控件繼承自WebControl的價值。
現在我覺得自己像個驢子:-) 我意識到我實際上是從「Control」繼承而不是「WebControl」。我們曾經從「WebControl」繼承,但由於某種原因它剛剛改爲「Control」。 我相信如果我剛開始繼承「WebControl」,這個問題就會不復存在。 – HaukurHaf