在.Net中组件和控件有何区别?

laoyr 2002-01-14 02:29:56
在.Net中组件和控件有何区别?是不是涉及到一些较深的东东呢?
...全文
309 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
qqchen79 2002-01-16
  • 打赏
  • 举报
回复
组件(现在叫程序集)是.net中的一切东东。控件是指那些可以放到窗体上的组件

这不是重复劳动吗?我就是这个意思。
这两个概念本来就很混淆,这也只是个感觉而已。
hillfree 2002-01-16
  • 打赏
  • 举报
回复
回复人: qqchen79(知秋一叶) (2002-1-15 23:37:09) 得0分
.......
同意Ninputer在.NET中的定义。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

能不能给出这个定义。呵呵,原来控件一定是组件。
WizardBear 2002-01-16
  • 打赏
  • 举报
回复
//-------------------------------------------
组件就是符合com标准的代码标准,

控件是建立在组件之上的符合控件标准的代码标准,

一个控件可以由多个组件组成。
//-------------------------------------------
CForce 2002-01-16
  • 打赏
  • 举报
回复
呵呵,我的感觉也差不多。
组件,就是组成程序的一个部件,用任何形式把代码保存起来,以后可以直接用的,就是组件。
控件,直观是工具栏那些(内置的)以及引入的那些东东(外置的)。以前是主要指ActiveX,现在应该更广泛吧,例如Windows.Forms.dll就包括很多控件了。
组建包括控件。
感觉而已,没必要背这些概念吧?
qqchen79 2002-01-15
  • 打赏
  • 举报
回复
控件和组件本来就没有明确的定义,但可以明确的是控件一定是组件,反之则不然。控件也有没有UI的,所以我说“一般”。:)
COM组件绝对不是都运行在Server端的,ActiveX控件也是COM组件,就功能而言,ActiveX控件要求比普通COM组件更多的接口,应该是功能更强才对。
同意Ninputer在.NET中的定义。但事实上这两个名词的使用比较混乱,可以参见IComponent接口,以及Componet/Control/UserControl类的定义。
icyer 2002-01-15
  • 打赏
  • 举报
回复
这里有一篇很好的文档:
http://www.csdn.net/Develop/read_article.asp?id=11810
TCat 2002-01-15
  • 打赏
  • 举报
回复
关注
龙腾九霄 2002-01-15
  • 打赏
  • 举报
回复
不同意楼上的观点,Control可以分为可视化和非可视化的两种,比如Email收发控件是非可视化,Button,是可视化控件。每个控件都有相对应的事件,方法和属性。
说的通俗一点组件有点像类,可以定义instant object 和继承。
组件在服务器端运行,而控件多数在客户端运行。
Com(component object model),组件的功能较控件可能更为强大一点,有更多的API接口,方法,属性,和事件。
当程序运行的时候,组件早就等候在内存当中,而控件在每次运行的时候才加载到内存当中。
这是我个人的一些观点,可能有不正之处,恳请各位高手指正。
hillfree 2002-01-15
  • 打赏
  • 举报
回复
组件(现在叫程序集)是.net中的一切东东。
~~~~~~~~~~~~
Assembly好像好听一点.呵呵
Ninputer 2002-01-15
  • 打赏
  • 举报
回复
组件(现在叫程序集)是.net中的一切东东。控件是指那些可以放到窗体上的组件
qqchen79 2002-01-14
  • 打赏
  • 举报
回复
组件应该是泛指软件架构的一个基本功能组成部分;而控件一般要有一定的界面,一定的用户交互的组件。

对于COM来说,实现IUnknown就是组件,但控件一般是要支持Visual Designer(VB/VC)的,需要实现一大堆的接口(IOleControl、IViewObject、Event Sink...)。

对于.NET来说,逻辑上说Assembly都可以成为组件,而Control一般是说从Control/UserControl继承来的可视组件。
hillfree 2002-01-14
  • 打赏
  • 举报
回复
我个人的理解哦,错了大家不要笑话,还请斧正:

组件就是遵循COM规范编写的东西啦.这个范围广.你想写什么就写什么好了.

控件好像大部分都是一个组件,特点呢: 一般来说就是:总是和UI有关,总是包装好了的.这样你才能好用.比如ActiveX控件.就是从OLE演变过来,基于COM规范编写的,用在Windows窗口上的包装好的COM组件.(不知道是不是正确?:))

但是,我个人觉得二者前者范围大,但似乎还不是整个包含了后者.大家谈谈看法,我也学习一下啊.

110,566

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧