.net firamework 框架里面的控件的继承关系。

 

     记得当初学习VB6.0的时候,入门的书,一上来就是控件的介绍,控件的属性、事件的使用,拖拽一个文本框、一个按钮,然后再双击按钮,在按钮的事件里面给文本框的Text 设置一个“hello word”,第一步就OK了。这就是传说中的 Hello Word。

 

     但是在学习Delphi的时候,书里面写的是控件的继承关系,按钮控件是继承的那个类,文本框又是继承的那个类,这些类又是继承的哪些类。会弄出来一个“树”出来。不知道.net方面的书有没有这样的树,管他有没有呢,先自己弄一个玩玩。

 

     最近在写自定义控件,感觉需要先稍微弄明白一下框架自带的控件都是怎么继承的,事件、属性又是在那里定义的,比如DataBind()是在那里定义的,DataSource又是在那里定义的。对了还想问一下,怎么快速的知道一个事件是不是在接口里面定义的?

 

     我用Reflector.exe打开 .net Framework2.0 的dll,找到我想看的控件,把他们的定义copy写来,写在自己的程序里面,然后利用vs2008的“查看类关系图”的功能,得到了下面的这张图。

 

 

 

     奇怪,DataBind() 是在 Control 里面定义的,而 DataSource 却在三个地方定义,这个就很郁闷了,他们好像也不是在同一个接口里面定义的。

 

     DataGrid和GridView居然没有什么关系,看来 GridView 好像是重写了一遍。

 

 

时间: 2024-10-22 13:51:43

.net firamework 框架里面的控件的继承关系。的相关文章

重新想象 Windows 8 Store Apps (16) - 控件基础: 依赖属性, 附加属性, 控件的继承关系, 路由事件和命中测试

原文:重新想象 Windows 8 Store Apps (16) - 控件基础: 依赖属性, 附加属性, 控件的继承关系, 路由事件和命中测试 [源码下载] 重新想象 Windows 8 Store Apps (16) - 控件基础: 依赖属性, 附加属性, 控件的继承关系, 路由事件和命中测试 作者:webabcd 介绍重新想象 Windows 8 Store Apps 之 控件基础 DependencyProperty - 依赖属性 AttachedProperty - 附加属性 控件的继

.net Framework2.0 里面的Webcontrols的几个常用控件的继承树

        为了写好分页控件的自动绑定的功能,研究了一下几个控件的继承关系,目的就是为了看看DataSource到底是从哪里来的.                层数还真是多,DataSource来自三个地方,Repeater 有自己的DataSource,BaseDataList有一个,他派生出来了DataGrid和DataList.       BaseDataBoundControl里面还有一个,他派生出来了GridView等控件.这样在做控件绑定的时候就好办多了,只需要做三个判断就可

充分利用 .NET 框架的 PropertyGrid 控件

控件 充分利用 .NET 框架的 PropertyGrid 控件Mark RideoutMicrosoft Corporation 摘要:本文旨在帮助您了解 Microsoft .NET 框架中的 PropertyGrid 控件,以及如何针对您的应用程序自定义该控件. 适用于: Microsoft .NET 框架 Microsoft Visual Studio .NET 目录PropertyGrid 控件简介创建 PropertyGrid 控件何处使用 PropertyGrid 控件选择对象自定

前端ligerui框架的grid控件, 后端springmvc获取分页问题

问题描述 前端ligerui框架的grid控件, 后端springmvc获取分页问题 前端ligerui框架 的grid控件 添加参数 contentType:'application/json', 后端springmvc就获取分页page有问题? 如果前端不加contentType及parms参数, 后端不加@RequestBody参数,能获取到page.pagesize. 如果前端加contentType及parms参数, 后端加@RequestBody参数,报错:java.lang.Nul

MFC中使用Tab Control从CTabCtrl控件类继承自己的类(CTabSheet)来处理。

使用Tab Control,并且从CTabCtrl控件类继承自己的类(CTabSheet)来处理. 首先我先介绍一下如何使用CTabSheet. 先要制作子对话框类,这次的子对话框类不要从CPropertyPage继承,而是直接从CDialog继承.并且各个子对话框资源的属性应设置为:Style为Child, Border为None. 在主对话框资源中,加入一个Tab Control,并且适当调整位置和大小.利用ClassWizard来为这个Tab Control创建一个CTabSheet的控件

充分利用 .NET 框架的 PropertyGrid 控件(微软)之二

控件|微软 创建 PropertyGrid 控件要使用 Visual Studio .NET 创建 PropertyGrid 控件,需要将该控件添加到工具箱中,因为默认情况下并不包含该控件.在 Tools(工具)菜单中,选择 Customize Toolbox(自定义工具箱).在对话框中选择 Framework Components(框架组件)选项卡,然后选择 PropertyGrid. 如果您从命令行编译代码,请使用 /reference 选项并指定 System.Windows.Forms.

充分利用 .NET 框架的 PropertyGrid 控件(微软)之八

控件|微软 添加域列表和简单的下拉列表属性支持对于基于 Enum 类型返回枚举的属性,PropertyGrid 会自动在下拉列表中显示枚举值.EnumConverter 也提供了这一功能.对于自己的属性,您可能希望为用户提供一个有效值列表(有时也称为选取列表或域列表),而其类型并不是基于 Enum.如果域值在运行时之前未知,或者值可以更改,则属于这种情况. 修改选项窗口,提供一个用户可从中选择的默认文件名的域列表.您已经将 DefaultFileName 属性添加到 AppSettings 类.

充分利用 .NET 框架的 PropertyGrid 控件(微软)之七

控件|微软 使用此版本的选项窗口后,您会注意到以下几点: 显示窗口时,将首先突出显示 SaveOnClose 属性. 选中 MaxRepeatRate 属性时,说明帮助窗格中将显示"以毫秒表示的文本重复率". SaveOnClose 属性显示在"文档设置"类别下.其他属性分别显示在"全局设置"和"版本"类别下. SettingsChanged 属性将不再显示. AppVersion 属性为只读.只读属性以灰显文本显示. 如果

jQuery:收集一些基于jQuery框架开发的控件/jquery插件2

Horizontal accordion: jQuery基于jQuery开发,非常简单的水平方向折叠控件.主页:http://letmehaveblog.blogspot.com/2007/10/haccordion-simple-horizontal-accordion.html (无法找到)下载:http://letmehaveblog.blogspot.com/2007/10/haccordion-simple-horizontal-accordion.html 示例:http://let