我想要我的自定義控件是一個接口類型的屬性。例如:具有屬性是一個接口的ASP.NET自定義控件
[
ToolboxData("<{0}:MyTextBox runat=server></{0}:MyTextBox"),
ParseChildren(true, "Validation")
]
class MyTextBox : WebControl
{
[
Category("Behavior"),
Description("The validation to use"),
DesignerSerializationVisibility(DesignerSerializationVisibility.Content),
PersistenceMode(PersistenceMode.InnerDefaultProperty)
]
public IValidation Validation { get; set; }
}
然後,當我去使用我的控制在Web窗體我希望能夠做到:
<my:MyTextBox ID="txt" runat="server">
<my:FancyValidator />
</my:MyTextBox>
這樣,我就能夠定義一個類,可以使用任何數量的驗證器。當我嘗試,現在做到這一點,我結束了一個錯誤說:
類型「IValidator」沒有名爲公共財產「FancyValidator」
什麼我需要做的,使這項工作?
謝謝!
沒錯,我絕對可以走這條路。在同一時間,現在我想弄清楚如何做到這一點:) – Jereme 2010-03-11 20:48:29
我明白 - 只是想我會指出:) – 2010-03-11 20:50:08
作爲一個側面說明,我發現我可以使這項工作,如果我進行驗證類型爲List的然後標記看起來像這樣: <我:MyTextBox ID = 「TXT」 RUNAT = 「服務器」> <我:FancyValidator /> 我的:MyTextBox> 不太我在追求什麼。如果一切都失敗了,可能不得不隨身攜帶... –
Jereme
2010-03-11 21:14:42