控件开发(Asp.net控件开发---控件开发基础)
大家好,如果您还对控件开发不太了解,没有关系,今天就由本站为大家分享控件开发的知识,包括Asp.net控件开发---控件开发基础的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!
Asp.net控件开发---控件开发基础
服务器控件开发基础
当开发一个服务器控件时首先要明白其内部的工作机理其实在页面内部每一点由返回的HTML代码无论是简单的<span>标签或者是button按钮或者是复杂的gridview控件都是由继承自System Web UI Control的对象生成的
控件的属性
控制控件的方法大多是通过控件的属性来操作的通过控制服务器控件的属性就可以相应的改变服务器生成的
下面是一个服务器控件的属性:
在Visual Studio里当通过属性窗口来改变控件的属性时 VS会自动将属性添加到对应的aspx的HTML里而在内添加属性时在属性窗口里也会对应显示更改过的属性视图比如
<asp:Button ID= Button runat= server Text= Button CommandName= cName/>
在属性窗口里会对应显示如下图
当然某些控件的属性会略有不同比如常用的Label控件
<asp:Label ID= Label runat= server>这里是Text属性</asp:Label>
在开始符号和结束符号之间的内容会被设置成Text属性
当然最实用也是我们最常用的是通过C#以编程的方式动态的修改控件的属性这就不说了
控件的方法
控件通过方法来操作更加复杂的控件操作通常在控件的方法内部会有很复杂的过程一般包括几个内部函数和属性的组合比如
private void LoadDropDownList()
{
ArrayList list= new ArrayList();
list Add( Hello);
list Add( Goodbye);
GridView DataSource= list;
GridView Databind();
}
这样通过调用Databind()方法就可以讲gridview和数据源进行绑定
控件的事件
控件通过事件来通知其它类或者客户端其内部的某个状态被改变事件是一种灵活的机制当控件与客户端进行交互的时候事件会通过Http Post方法和服务器进行交互通过自动回传机制 WEB开发中的事件表现起来就会像开发Windows FORM程序一样(当然速度是无法和Form相比的)
在Visual Studio中可以在属性窗口中通过黄色的闪电图标来显示和控制控件的事件如下
当双击相应的事件后会在后台产生默认的处理方法命名规则为控件名_事件名
WEB Page本质是一个控件树
在aspx页面的头部将Trace= true设置到Page后页面会显示相应的追踪信息在Control Tree那一节你会发现整个页面其实就是一个控件树如图:
根控件?
OK既然页面的本质是一个控件树按照C#是完全面向对象的语言惯例(所有的一切都是继承于System Object)那么所有控件共同的父类是什么?
在中所有的控件被分布在个主要命名空间中分别为
System Web UI
System Web UI WebControls
System Web UI HtmlControls
它们之间的关系如下图所示
System Web UI命名空间
lishixinzhi/Article/program/net/201311/12910什么是控件
控件
1、控件应用使用现成的控件来开发应用程序时,控件工作在两种模式下:设计时态和运行时态。在设计时态下,控件显示在开发环境下的一个窗体中。设计时态下控件的方法不能被调用,控件不能与最终用户直接进行交互操作,也不需要实现控件的全部功能。在运行状态下,控件工作在一个确实已经运行的应用程序中。控件必须正确地将自身表示出来,它需要对方法的调用进行处理并实现与其他控件之间有效的协同工作。 2、控件创建创建控件就是自行设计制作出新的控件。设计控件是一项繁重的工作。自行开发控件与使用控件进行可视化程序开发存在着极大的不同,要求程序员精通面向对象程序设计。设计控件是一项艰苦的工作。对于控件的开发者,控件是纯粹的代码。控件的开发不是一个可视化的开发过程,而是用C++或Object Pascal严格编制代码的工作。实际上,创建新控件使我们回到传统开发工具的时代。虽然这是一个复杂的过程,但也是一个一劳永逸的过程。创建控件的最大意义在于封装重复的工作,其次是可以扩充现有控件的功能。控件创建过程包括设计、开发、调试(就是所谓的3D's)工作,然后是控件的使用。控件开发者应该掌握的三项主要内容是:属性、事件和方法。
编辑本段ActiveX控件
由 Microsoft基础类库(MFC)提供的其他控件类(以前称为 OLE控件),可以在 Windows应用程序的对话框中使用,或在万维网的 HTML页中使用。有关更多信息,请参见 MFC ActiveX控件
编辑本段Windows公共控件
Windows操作系统总是提供了若干 Windows公共控件。这些控件对象都是可编程的,Visual C++对话框编辑器支持将这些控件对象添加到对话框。Microsoft基础类库(MFC)提供相应的类来封装这些控件中的每一个,如表 Windows公共控件和 MFC类中所示。(表中的某些项有进一步描述它们的相关主题。有关没有主题的控件的信息,请参见 MFC类的文档。) CWnd类是所有窗口类(包括所有控件类)的基类。下列环境支持 Windows公共控件: Windows 95、Windows 98和 Windows 2000 Windows NT 3.51版及更高版本 Win32系列 1.3版(Visual C++ 4.2版及更高版本不支持 Win32系列)旧式公共控件在 Windows的早期版本中同样可用,这些旧式公共控件包括复选框、组合框、编辑框、列表框、选项按钮、普通按钮应用示例
列表框示例
要在 Microsoft Office Excel 2003和早期版本的 Excel中添加列表框,请单击“窗体”工具栏上的“列表框”按钮。然后,创建包含单元格 B2:E10的列表框。如果未显示“窗体”工具栏,请指向“视图”菜单上的“工具栏”,然后单击“窗体”。要在 Excel 2007中添加列表框,请依次单击“开发工具”选项卡、“插入”,然后单击“窗体控件”部分中的“列表框”。右键单击列表框,然后单击“设置控件格式”。键入以下信息,然后单击“确定”。要指定列表的区域,请在“数据源区域”框中键入 H1:H20。要在单元格 G1中键入数值(根据在列表中选择的项目),请在“单元格链接”框中键入 G1。注意:INDEX()公式使用 G1中的值返回相应的列表项目。在“选定类型”下,确保选择“单选”选项。单击“确定”。注意:仅在您使用 Microsoft Visual Basic for Applications过程返回列表值时,“复选”和“扩展”选项才有用。另请注意,使用“三维阴影”复选框可使列表框具有三维外观。列表框应显示项目列表。要使用列表框,请单击任意单元格,这样不会选择列表框。如果您单击列表中的某一项目,单元格 G1将更新为一个数字,以指示所选项目在列表中的位置。单元格 A1中的 INDEX公式使用此数字显示项目的名称。
组合框示例
要在 Excel 2003和早期版本的 Excel中添加组合框,请单击“窗体”工具栏上的“组合框”按钮。要在 Excel 2007中添加组合框,请依次单击“开发工具”选项卡、“插入”,然后单击“窗体控件”部分中的“组合框”。创建包含单元格 B2:E2的对象。右键单击组合框,然后单击“设置控件格式”。输入以下信息,然后单击“确定”:要指定列表的区域,请在“数据源区域”框中键入 H1:H20。要在单元格 G1中键入数值(根据在列表中选择的项目),请在“单元格链接”框中键入 G1。注意:INDEX公式使用 G1中的值返回相应的列表项目。在“下拉显示项数”框中,键入 10。此条目决定在必须使用滚动条查看其他项目之前显示的项目数。注意:“三维阴影”复选框是可选的;使用它可使下拉框或组合框具有三维外观。下拉框或组合框应显示项目列表。要使用下拉框或组合框,请单击任意单元格,这样不会选择对象。如果您单击下拉框或组合框中的某一项目,单元格 G1将更新为一个数字,以指示所选项目在列表中的位置。单元格 A1中的 INDEX公式使用此数字显示项目的名称。
微调框示例
要在 Excel 2003和早期版本的 Excel中添加微调框,请单击“窗体”工具栏上的“微调框”按钮,然后创建包含单元格 B2:B3的微调框。将微调框的大小调整为大约列宽度的四分之一。要在 Excel 2007中添加微调框,请依次单击“开发工具”选项卡、“插入”,然后单击“窗体控件”部分中的“数值调节钮”。右键单击微调框,然后单击“设置控件格式”。输入以下信息,然后单击“确定”:在“当前值”框中,键入 1。此值将初始化微调框,以便 INDEX公式指向列表中的第一个项目。在“最小值”框中,键入 1。此值会将微调框的顶部限制为列表中的第一个项目。在“最大值”框中,键入 20。此数字指定列表中条目的最大数。在“步长”框中,键入 1。此值控制微调框控件将当前值增大多少。要在单元格 G1中键入数值(根据在列表中选择的项目),请在“单元格链接”框中键入 G1。单击任意单元格,这样不会选择微调框。如果您单击微调框中的向上控件或向下控件,单元格 G1将更新为一个数字,以指示微调框的当前值与微调框步长的和或差。然后,此数字将更新单元格 A1中的 INDEX公式以显示下一项目或上一项目。如果您在当前值为 1时单击向下控件,或者在当前值为 20时单击向上控件,则微调框值不会更改。
滚动条示例
要在 Excel 2003和早期版本的 Excel中添加滚动条,请单击“窗体”工具栏上的“滚动条”按钮,然后创建高度为单元格 B2:B6且宽度大约为列宽度的四分之一的滚动条。要在 Excel 2007中添加滚动条,请依次单击“开发工具”选项卡、“插入”,然后单击“窗体控件”部分中的“滚动条”。右键单击滚动条,然后单击“设置控件格式”。键入以下信息,然后单击“确定”。在“当前值”框中,键入 1。此值将初始化滚动条,以便 INDEX公式指向列表中的第一个项目。在“最小值”框中,键入 1。此值会将滚动条的顶部限制为列表中的第一个项目。在“最大值”框中,键入 20。此数字指定列表中条目的最大数。在“步长”框中,键入 1。此值控制滚动条控件将当前值增大多少。在“页步长”框中,键入 5。此条目控制当您单击滚动条中滚动框的任意一边时将当前值增大多少。要在单元格 G1中键入数值(根据在列表中选择的项目),请在“单元格链接”框中键入 G1。注意:“三维阴影”复选框是可选的;使用它可使滚动条具有三维外观。单击任意单元格,这样不会选择滚动条。如果您单击滚动条中的向上控件或向下控件,单元格 G1将更新为一个数字,以指示滚动条的当前值与滚动条步长的和或差。此数字在单元格 A1中的 INDEX公式中使用,以显示当前项目的下一项目或上一项目。您还可以拖动滚动条以更改值,或单击滚动条中滚动框的任意一边以将该值增大 5(“页步长”值)。如果您在当前值为 1时单击向下控件,或者在当前值为 20时单击向上控件,则滚动条不会更改。
编辑本段其他 MFC控件类
除了封装所有 Windows公共控件的类和支持对您自己的 ActiveX控件进行编程(或使用其他应用程序提供的 ActiveX控件)的类以外,MFC本身还提供了下列控件类: CBitmapButton CCheckListBox CDragListBox控件{Controls}:一种基于微软公司ActiveX技术的可重用的软件组件。可用这些组件增加网页、桌面应用程序和软件开发工具的交互性以及更多的功能,例如动画效果或弹出式选单。ActiveX控件可用不同程序设计语言编写,包括Java、C++和Visual Basic。
控件是什么意思
控件是指对数据和方法的封装。控件可以有自己的属性和方法,其中属性是控件数据的简单访问者,方法则是控件的一些简单而可见的功能、控件创建过程包括设计、开发、调试(就是所谓的3Ds开发流程,即Design、Develop、Debug)工作,然后是控件的使用。
设计控件是一项繁重的工作。自行开发控件与使用控件进行可视化程序开发存在着极大的不同,要求程序员精通面向对象程序设计。创建控件的最大意义在于封装重复的工作,其次是可以扩充现有控件的功能。
扩展资料
1、控件应用
使用现成的控件来开发应用程序时,控件工作在两种模式下:设计时态和运行时态。
在设计时态下,控件显示在开发环境下的一个窗体中。设计时态下控件的方法不能被调用,控件不能与最终用户直接进行交互操作,也不需要实现控件的全部功能。
在运行状态下,控件工作在一个确实已经运行的应用程序中。控件必须正确地将自身表示出来,它需要对方法的调用进行处理并实现与其他控件之间有效的协同工作。
2、控件创建
创建控件就是自行设计制作出新的控件。
设计控件是一项艰苦的工作。对于控件的开发者,控件是纯粹的代码。实际上,创建新控件使我们回到传统开发工具的时代。虽然这是一个复杂的过程,但也是一个一劳永逸的过程。
参考资料来源:百度百科-控件
如果你还想了解更多这方面的信息,记得收藏关注本站。