文件名称:自定义控件-effective.debugging.2016.7
文件大小:8.09MB
文件格式:PDF
更新时间:2024-06-23 11:46:55
C#网络应用
10.4 自定义控件 与用户控件相比,自定义控件则相对复杂一些,Windows 自定义控件默认继承自 System.Windows.Forms.Control。 当从 Control 继承时,将继承使控件能够运行的最基本的功能。Control 类的固有功能可处 理用户通过键盘和鼠标的输入,定义控件的边界和大小,提供窗口句柄,以及提供信息处理和 安全等等。但是它没有包含任何绘图功能(在此指的是控件图形界面的实际呈现),也没有包 含任何特定用户的交互功能,必须通过自定义代码提供所有这些功能,但是实现比较灵活。 10.4.1 设计Windows自定义控件 .NET Framework2.0在System.Windows.Forms命名空间中包含了能够使用视觉样式绘制公共控 件的部件和状态的类。这些类中的每一个都包含一些 static 方法,这些方法使用操作系统的当前视 觉样式绘制处于特定状态的控件或控件的部件。比如 ButtonRenderer 类,CheckBoxRenderer 类, GroupBoxRenderer 类和 RadioButtonRenderer 类等等。 在 VS2005 中创建 Windows 应用程序时,默认情况下在 Program 类中将在创建任何控件之前调 用 Application.EnableVisualStyles()来启动可视化样式。例 10-4 介绍了如何用 ButtonRenderer 类 绘制自定义按钮控件的用户界面。 【例 10-4】创建自定义控件 CustomButton,使用 DrawButton 方法来绘制用户界面,单击 此控件则在原始控件的边界内绘制一个较小的 CustomButton 按钮,以此来完成类似于 Button 按钮的视觉效果。 1) 运行 VS2005,选择【新建项目】。在【Visual C#】中选择【Windows 控件库】,然后修 改项目名为 CustomWinControls。 266