用户控件和复合Web服务器控件

3

在编写ASP.Net自定义控件时,我应该采用哪种方法?我应该创建自定义用户控件还是创建复合Web服务器控件。如何为复合控件添加设计器支持。它们彼此之间有什么不同以及它们各自的优缺点。

最好提供每种方法的示例以便区分。

2个回答

4
在官方文档中有一个比较:组合控件 vs. 用户控件 如果我打算向其他开发人员提供控件,例如第三方控件供应商,则我会选择组合控件。然后,我会为这些控件添加设计功能。
但是,如果我只想开发在项目中执行自定义操作的控件,则用户控件更容易编写,并且需要更少的ASP.NET内部知识。
附注:Kothari的书非常好,是开发组合控件时必读的书籍,但这还不够。因为这是一本ASP.NET 1.1的书,没有提到在ASP.NET 2中出现的非常重要的概念:DataBoundControl与DataSourceControl的概念。所有从.NET 2+开始出现的ASP.NET自定义控件,如FormView/GridView/DetailsView和ObjectDataSource、SqlDataSource等,都建立在这些基本概念之上,而这些基本概念在该书中根本没有涉及。不幸的是,该书从未更新过,我也不知道有哪些其他书籍能详细解释这一点。

0

1
我赞同,尽管这本书有些老旧。 - John Saunders
@Shekhar:不,解释不会有更多的好处。去买这本书吧。 - John Saunders
4
如果每个在StackOverflow上回答问题的人都只用“去读这本书”作为答案,那这个地方就没什么用了。如果你真的想发表类似的观点,请至少在一定程度上回答这个问题并提到这本书以获取更多细节。发问者并没有要求你关于开发Web控件的好书的看法。 - KOTJMF

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接