如何(如果有的话)你可以使ASP.NET UserControl从另一个UserControl继承?

时间:2009-03-12 13:03:44

标签: asp.net inheritance user-controls

在Windows窗体中,可以轻松地从另一个用户控件继承一个用户控件。继承的控件包含父窗体的所有控件,您可以添加更多。可以用ASP.NET完成同样的事情吗?我在谈论.ASCX类型的用户控件。

3 个答案:

答案 0 :(得分:14)

简短的回答是不,它不能轻松完成。用户控件或webforms之间没有继承。您可以在代码隐藏类之间创建继承层次结构,但不继承gui组件。

答案 1 :(得分:4)

Windows窗体示例和Web窗体示例之间的区别在于控件具有标记部分。我想有一天可以克服这个问题,因为Web应用程序会编译所有内容(至少在某些情况下),但今天情况并非如此。

然而,你可以在另一个用户控件上拍打用户控件,这是一个令人作呕的例子。它不会为您提供继承,但它允许您通过制作原始控件和需要添加到其中的内容的组合来装饰具有其他控件的特定控件。那可能会解决你的问题?

答案 2 :(得分:3)

您当然可以在代码中继承基本用户控件并在代码中插入其他控件,如果您正在谈论使用可视化设计器进行构建,那么我不确定。我知道从system.web控件和用户控件创建复合控件,所以没有理由你的新控件不能包含另外的用户控件,并在其周围添加了额外的控件。