自定义控件的学习日志(Pro.NET2.0 Windows Forms and Custom Controls)

来源:互联网 发布:链轮计算软件 编辑:程序博客网 时间:2024/05/22 07:48

控件设计时鼠标的控制

  1. ControlDesigner.OnPaintAdornments,在控件设计时可以在控件上进行绘制,如下代码所示,当控件在设计时鼠标移入则在控件上画一矩形边框

         private bool mouseOver;
        protected override void OnMouseEnter()
        {
            base.OnMouseEnter();
            mouseOver = true;
            Control.Invalidate();
        }
        protected override void OnMouseLeave()
        {
            base.OnMouseLeave();
            mouseOver = false;
            Control.Invalidate();
        }
        protected override void OnPaintAdornments(System.Windows.Forms.PaintEventArgs pe)
        {
            base.OnPaintAdornments(pe);

            if (mouseOver)
            {
                pe.Graphics.DrawRectangle(pen, 0, 0, Control.Width - 1, Control.Height - 1);
            }
        }

      2.ControlDesigner.SelectionRules用于控制控件在设计是是否可以改变大小等,如下代码:

        public override System.Windows.Forms.Design.SelectionRules SelectionRules
        {
            get
            {
                return System.Windows.Forms.Design.SelectionRules.LeftSizeable | System.Windows.Forms.Design.SelectionRules.Moveable;
            }
        }
       含义为控件是设计时可以从左侧改变大小,并且是可移动的

原创粉丝点击