WinForm——Button总结

简介: WinForm——Button总结

常用属性

实例总结

如何动态创建Button控件。

想要动态创建控件,首先要创建控件类的对象,然后使用系统Controls对象的Add方法将控件注册到窗体中。例:


private void Form1_MouseDown(object sender,MouseEventArgs e)


{

      Button btn=new Button();


btn.Left=e.X;


btn.Top=e.Y;


btn.Name=”Button”+intCount.ToString();


btn.Text=”Button:+intCount.ToString();


this.Controls.Add(btn);


intCount++;


}


实现对Button按钮的重绘

新建用户控件,命名为ControlButton。然后将继承改为Button


 public partial class ControlButton : Button


   {


       public ControlButton()


       {


           this.SetStyle(


               ControlStyles.UserPaint |


               ControlStyles.AllPaintingInWmPaint |


               ControlStyles.OptimizedDoubleBuffer |


               ControlStyles.ResizeRedraw |


               ControlStyles.SupportsTransparentBackColor, true);


           FlatStyle = FlatStyle.Flat;


           FlatAppearance.BorderSize = 1;


           FlatAppearance.BorderColor = Color.FromArgb(102, 102, 102);


           FlatAppearance.MouseOverBackColor = Color.FromArgb(102, 102, 102);


           FlatAppearance.MouseDownBackColor = Color.FromArgb(150, 150, 150);


       }


       private bool _isClicked = false;


       public bool IsClicked


       {


           get { return _isClicked; }


           set { _isClicked = value; }


       }


       private bool _inClient = false;


       private bool _mouseDown = false;


       private bool _enableClicked = false;


       [Category("自定义属性"), Description("启用按下状态")]


       public bool EnableClicked


       {


           get { return _enableClicked; }


           set { _enableClicked = value; }


       }


       private Color _fontColor = Color.Gainsboro;


       [Category("自定义属性"), Description("按下状态字体颜色")]


       public Color ClickedForeColor


       {


           get { return _fontColor; }


           set { _fontColor = value; }


       }


       private Size _imgSize;


       [Category("自定义属性"), Description("图片尺寸")]


       public Size ImageSize


       {


           get { return _imgSize; }


           set


           {


               _imgSize = value;


               Invalidate();


           }


       }


       private Image _enterImage = null;


       [Category("自定义属性"), Description("鼠标悬浮时图片")]


       public Image EnterImage


       {


           get { return _enterImage; }


           set


           {


               _enterImage = value;


           }


       }


       private Image _downImage = null;


       [Category("自定义属性"), Description("鼠标按下时图片")]


       public Image DownImage


       {


           get { return _downImage; }


           set { _downImage = value; }


       }


       protected override void OnMouseDown(MouseEventArgs mevent)


       {


           IsClicked = !IsClicked;


           _mouseDown = true;


           base.OnMouseDown(mevent);


       }


       protected override void OnMouseUp(MouseEventArgs mevent)


       {


           _mouseDown = false;


           base.OnMouseUp(mevent);


       }


       protected override void OnMouseEnter(EventArgs e)


       {


           _inClient = true;


           base.OnMouseEnter(e);


       }


       protected override void OnMouseLeave(EventArgs e)


       {


           _inClient = false;


           base.OnMouseLeave(e);


       }


}


生成成功后,在工具箱里面就可以看到。

tt.png

代码参照:https://blog.csdn.net/qq_33324878/article/details/81065310



tt.png

目录
相关文章
|
10月前
|
C# Windows
WPF技术之Button控件
WPF(Windows Presentation Foundation)是用于创建 Windows 客户端应用程序的一种技术。在 WPF 中,按钮是常用的控件之一,用于触发某种行为或操作。
221 0
WPF技术之Button控件
|
开发框架 JavaScript 前端开发
Asp.net 控件用法汇总-RadioButtonList、DropDownList、button、Checkbox...
Asp.net 控件用法汇总-RadioButtonList、DropDownList、button、Checkbox...
72 0
|
Windows
Winform控件Button及控件的鼠标事件介绍
按钮控件是最常用的,用于实现点击完成操作。其主要处理的就是鼠标点击Click事件。由此可以引发出所有与鼠标有关的事件.....
1171 0
Winform控件Button及控件的鼠标事件介绍
|
iOS开发
SwiftUI极简教程08: Button按钮的使用
SwiftUI极简教程08: Button按钮的使用
1170 0
SwiftUI极简教程08: Button按钮的使用
SwiftUI—Button按钮控件的使用
SwiftUI—Button按钮控件的使用
484 0
SwiftUI—Button按钮控件的使用
|
数据安全/隐私保护 图形学
WinForm——Text控件总结
WinForm——Text控件总结
188 0
WinForm——Text控件总结
|
数据可视化 数据库 图形学
WinForm——ComboBox总结
WinForm——ComboBox总结
472 0
WinForm——ComboBox总结
WinForm——CheckBox总结
WinForm——CheckBox总结
272 0
|
容器
WPF-Button|IsCancel&&IsDefault
原文:WPF-Button|IsCancel&&IsDefault Button个别属性 IsCancel属性设置为true时会绑定键盘ESC,按下ESC键相当于点击该button。
1099 0
|
C#
【WPF】代码触发Button点击事件
原文:【WPF】代码触发Button点击事件 先定义Button按钮并绑定事件。 public void test() { Button btn = new Button(); btn.
2431 0