dotnet 自定义控件学习

来源:互联网 发布:点云数据三维重建 编辑:程序博客网 时间:2024/04/28 05:33

1、生成一个空的解决方案。

2、添加自定义控件工程。

3、添加一个类,可以继承某控件。

         using System;

         using System.ComponentModel;

         using System.Drawing;

4、添加属性。

          private System.Drawing.Color  _bgColor;

          [

               Bindable(true),

               Category("Options"),

               DefaultValue(System.Drawing.Color.Blur),

               Description("Specifies the background color of control ")

          ]

          public System.Drawing.Color BGColor

          {

                  get { return this._bgColor;}

                  set

                  {

                        if (this._bgColor != value)

                        {

                               this._bgColor = value;

                               this.Invalidate();

                        }

          }

5、添加方法。

6、重载事件、方法。

     protected override void OnPaint(System.Windows.Forms.PaintEventArgs e)

     {

           base.OnPaint (e);

           //设置显示的处理

     }

6、添加一个bmp文件,用于在工具栏上显示的图标。

    设置文件的编译属性为:embeded。

    设置为16色,长宽各为16。

7、添加一个类,继承System.Windows.Forms.Design.ScrollableControlDesigner。

    protected override void PreFilterProperties(System.Collections.IDictionary properties)

   {

         //控件属性处理

   }

8、在控件类上设置。

   [ToolboxItem(true)]

   [ToolboxBitmap(typeof(XXX))]

   [DesignerAttribute(typeof(XXX))]

9、编译成生dll,完成。