我们都知道vs工具箱中的控件是固定的,那么我们来试试这个方法:控件拓展,简而言之,重写控件,自己定义你想要的效果!
自定义控件的三种实现
组件集合:复用
原生控件:所有的东西自己写
控件扩展:重写控件
以下是我们实现的自定义的Button控件和普通Button控件的区别(我将自定义的Button控件设置了背景图片哦)
如何完成自定义控件的功能???
第一:新建项目(类库中)
第二:导包
using System.Drawing
System.Windows.Forms和System.Drawing
第三、代码部分
现在来编写button1.cs中的代码
添加背景图片 使控件更加美观
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
//记得导包哦
using System.Drawing;
using System.Windows.Forms;
namespace ClassLibrary1
{
//使用Button控件为示例
//button继承Button
public class button1:Button
{
//重写button无参构造函数的方法
public button1()
{
this.Size = new Size(500,300);
//背景图片的绝对路径
this.BackgroundImage = Image.FromFile("E:\\link1.png");
this.FlatStyle = 0; //设置平面样式
this.FlatAppearance.BorderSize = 0; //设置边框样式
this.MouseMove += mouse;//生成移动事件
this.Click += click;//生成单击事件
}
//单击
private void click(object sender, EventArgs e)
{
this.BackgroundImage = Image.FromFile("E:\\link1.png");
}
//移动
private void mouse(object sender, MouseEventArgs e)
{
this.BackgroundImage = Image.FromFile("E:\\link1.png");
}
}
}
第四、右键类图的解决方案生成
第五、创建一个窗体项目
将自定义控件拖到窗体即可
注: 每次运行时需要重新生成一下类库
以上就是关于自定义控件的干货分享啦
希望对大家有帮助!
蟹蟹观看/花花/