半岛权威十大直营(官方)网站

控件与组件的简单比较

原创|其它|编辑:郝浩|2010-04-30 15:25:53.000|阅读 986 次

概述:有很多的朋友搞不清楚Component与Control之间的区别,本文将对控件和组件进行简单的比较。

# 界面/图表报表/文档/IDE等千款热门软控件火热销售中 >>

  有很多的朋友搞不清楚Component与Control之间的区别,比较简单形象的区别有下面两点:

  1、Component在Run Time时不能呈现UI,而Control可以在Run Time时呈现UI(但是vs 2005里的asp.net中的SqlDataSource是Control,但是它不能呈现UI)。

  2、Component是贴在容器Container上的,而Control则是贴在Windows Form或者Web Form上的。

  举例来说,SqlCommand是个Component,DataGrid则是一个Control。

  那我们又如何来开发一个Component呢?其实很简单,只要我们把一个类从System.ComponentModel.Component(下面简写Component)继承下来即可。

  下面我们就来编写一个简单的Component,打开vs 2005添加一个新的ClassLibrary工程,名称为Components,更改Class1的代码如下:

 
using System;
using System.Collections.Generic;
using System.Text;
using System.ComponentModel;

namespace Components
{
public class Component1 : Component
{
private int _id;
private string _name;
private DateTime _createDateTime;

// 在Property窗口中为灰色显示。
public int Id
{
get { return _id; }
}

// 在Property窗口中可以设置值。
public string name
{
get{ return _name; }
set { _name = value; }
}

// 在Property窗口中不可见。
public DateTime CreateDateTime
{
set{ _createDateTime = value; }
}
}
}

  编译完成后,其Property的效果如下:


标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@wqylolg.cn

文章转载自:博客园

为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP