C# control_base Note I
2009-12-06 20:10
197 查看
------------------------
自定义控件属性
ToolboxItem
工具栏中是否显示控件
[ToolboxItem(false)]
public class MyPanel : UserControl
ToolboxBitmap
设置控件图标
[ToolboxBitmap(typeof(System.Windows.Forms.Panel))]
public class MyPanel : UserControl
Category与Description
[Category("Appearance"), Description("阴影色")]
public System.Drawing.Color ShadowColor { get { …} set { …} }
这两个是经常都会写在一起的属性,Category表示类型,如属性框中所显示的外观,布局等,当然,你可以自己写一个,叫“自定义属性”,而Description就是这个属性的描述,用来说明属性有什么用途。这两个的设置相对都比较简单,可以说,一看就知道,不过提一下,Appearance是特殊的词,在属性面板中,它就是外观一栏。
DefaultValue
用于设置默认的值
[DefaultValue(typeof(Color), "DarkGray")]
public System.Drawing.Color ShadowColor { get { …} set { …} }
Browsable
表示,是否在属性面板中显示这个属性
[Browsable(true)]
表示,将在属性面板中显示这个属性。
DesignerSerializationVisibility
表示,是否在*.Designer.cs文件中将设置的代码写出来,也就是是否要实现序列化
[DesignerSerializationVisibility(DesignerSerializationVisibility.Visible)]
表示需要实现序列化。
★
★
★
★
------------------------
★以编程方式调用按钮的 Click 事件 (Visual C#)
即使用户不单击按钮,您也可以使用 PerformClick 方法以编程方式引发按钮的 Click 事件。以下示例演示如何在程序内调用按钮的 click 事件。当单击 button2 时,button1 的 click 事件也被触发。
当然也可以直接调用事件处理函数,button_click(null,null); 但是使用PerformClick 好处,能在继承窗体可以在未显示声明click事件时调用click事件处理函数
★
--------------------
★自定义鼠标光标形状: 加载Cur格式文件
Cursor Cursor = new Cursor("a.cur");
★
------------------------
★
★
★
★
自定义控件属性
ToolboxItem
工具栏中是否显示控件
[ToolboxItem(false)]
public class MyPanel : UserControl
ToolboxBitmap
设置控件图标
[ToolboxBitmap(typeof(System.Windows.Forms.Panel))]
public class MyPanel : UserControl
Category与Description
[Category("Appearance"), Description("阴影色")]
public System.Drawing.Color ShadowColor { get { …} set { …} }
这两个是经常都会写在一起的属性,Category表示类型,如属性框中所显示的外观,布局等,当然,你可以自己写一个,叫“自定义属性”,而Description就是这个属性的描述,用来说明属性有什么用途。这两个的设置相对都比较简单,可以说,一看就知道,不过提一下,Appearance是特殊的词,在属性面板中,它就是外观一栏。
DefaultValue
用于设置默认的值
[DefaultValue(typeof(Color), "DarkGray")]
public System.Drawing.Color ShadowColor { get { …} set { …} }
Browsable
表示,是否在属性面板中显示这个属性
[Browsable(true)]
表示,将在属性面板中显示这个属性。
DesignerSerializationVisibility
表示,是否在*.Designer.cs文件中将设置的代码写出来,也就是是否要实现序列化
[DesignerSerializationVisibility(DesignerSerializationVisibility.Visible)]
表示需要实现序列化。
★
★
★
★
------------------------
★以编程方式调用按钮的 Click 事件 (Visual C#)
即使用户不单击按钮,您也可以使用 PerformClick 方法以编程方式引发按钮的 Click 事件。以下示例演示如何在程序内调用按钮的 click 事件。当单击 button2 时,button1 的 click 事件也被触发。
当然也可以直接调用事件处理函数,button_click(null,null); 但是使用PerformClick 好处,能在继承窗体可以在未显示声明click事件时调用click事件处理函数
★
--------------------
★自定义鼠标光标形状: 加载Cur格式文件
Cursor Cursor = new Cursor("a.cur");
★
------------------------
★
★
★
★
相关文章推荐
- c#中的关键字 base 和this
- C#.NET常见问题(FAQ)-如何让TabControl可以动态增加或删除
- [C#.NET][VB.NET] 自訂控制項的顯示視窗屬性 /User Control of Properties(二)
- 【转】c# TabControl 中TabPages放左边显示文字
- C#之用Base方法调用基类构造函数学习案例
- c# tabcontrol 点击不同的tabpage 触发不同的事件
- C#队列泛型基类BaseQueue,访问索引器时自动创建类型实例
- Developing ASP.NET Custom Control With C# Builder
- C#利用tabControl控件实现多窗体嵌入及关闭
- c#的一个搜索按钮能控制多个tabcontrol的显示问题
- C#中Control的Invoke和BeginInvoke是相对于支线线程
- 【转】C#中base关键字的几种用法
- C# base和this
- C# WinForm多线程开发(三) Control.Invoke
- c# abstract抽象类与继承类子类的构造函数_base
- c#学习-base和this在构造函数中的应用
- C#多个Windows Service 传递给ServiceBase时,只运行其中一个的解决办法
- (教学思路 C#之类七)类和构造方法的继承(base关键字、Object类)
- 【分析】浅谈C#中Control的Invoke与BeginInvoke在主副线程中的执行顺序和区别(SamWang)
- (教学思路 C#之类八)多态性:base、new、override、virtual