zoukankan      html  css  js  c++  java
  • 开发控件的入门知识(菜鸟级)

       尝试着做了一个继承Button的控件,功能也就是指定Button的背景色而已,虽然功能很简单,但是可以掌握开发控件的入门知识。。。。,go on:
       1。新建一个windows控件库的项目buttonlibMColor,将cs的文件名修改为:buttonlibMColor,类名修改为:buttonlibMColor。
       2。将继承的类修改为:System.Windows.Forms.Button
       ok,着手代码的编写
       指定背景色的颜色:
      
     1public override Color BackColor
     2        {
     3            get
     4            {
     5                return base.BackColor;
     6            }

     7            set
     8            {
     9                base.BackColor = System.Drawing.Color.DodgerBlue;
    10            }

    11        }

       重写OnPaint事件:
     
    1protected override void OnPaint(PaintEventArgs e)
    2        {
    3            base.BackColor = BackColor;
    4            base.OnPaint (e);
    5        }

    编译之后:
    新建一个工程文件,在引用中添加buttonlibMColor.dll组件。并且在项目选项卡中添加该控件,将该控件拖入到页面上。编译就可看到刚才所做的效果。。想做复杂的就得花点时间了。。。
        添加控件属性(在上面的工程中添加如下的代码):

    Color b_Color ;
            [Browsable(
    true),Description("设置BtnColor的颜色"),Category("自定义"),DefaultValue("")]
            
    public Color BtnColor 
            
    {
                
    get
                
    {
                    
    return b_Color;
                }

                
    set 
                
    {
                    b_Color 
    = System.Drawing.Color.Orange;
                    Invalidate();
                }

                
            }

    效果如下:



     

  • 相关阅读:
    用perfmon简单分析GDI+性能和代码的一点小改进
    从clr profiler的角度看string concat 和stringbuilder的性能差别
    CLR兴趣小组第一次活动总结
    C#3.0看起来比较酷的咚咚
    windbg入门及提高(广告贴)
    济南.NET技术俱乐部8月份活动预告
    WebService安全性的问题
    Basic Windbg 4.Out Of Memory的分析及诊断方法
    A question about C++ static method and C# static method
    内存泄露的小问题
  • 原文地址:https://www.cnblogs.com/oldhorse/p/287702.html
Copyright © 2011-2022 走看看