C# winform 自定义控件

近来因为项目的问题,开始研究winform自定义控件,这篇主要是将自定义控件的属性在属性编辑器中可编辑,如果你对自定义控件比较了解的,就不用继续往下看了

首先,我创建了一个类UserButton,继承了Button这个窗体控件,这个自定义的按钮主要作用有3个,最大化,最小化,关闭,这里我就不写具体3个功能的操作了

通过构造,重新设置样式

1    public UserButton() : base() {
2             base.SetStyle(
3               ControlStyles.UserPaint |
4               ControlStyles.AllPaintingInWmPaint |
5               ControlStyles.OptimizedDoubleBuffer |
6               ControlStyles.ResizeRedraw, true);
7         }
View Code

然后我们建立一个枚举类型

    public enum BtnFunction { 
            Max,Min,Close
        }
 private BtnFunction _bFunction;

        [Category("BtnFunction"),
        DefaultValue(BtnFunction.Max),
        Browsable(true),
        Description("设置按钮的用处,可选'最大化','最小化','关闭'")]
        public BtnFunction BFunction {
            get { return _bFunction; }
            set {
                if (value != _bFunction) {
                    _bFunction = value;
                    this.Invalidate();
                }
            }
        }

这里主要就是设置变量,将变量显示在编辑器中.

现在你可以创建一个窗体应用程序,来试试这个功能了

原文地址:https://www.cnblogs.com/xufei/p/3213780.html