CheckBox是VS中常用的控件之一,它是的本质就是一个开关,一个bool变量控件。作为开关控制控件非常好用,但要将其变得很好看很漂亮,似乎就要另辟蹊径了,网上有都很多使用相框PictureBox或者按键Button结合bool变量来实现,还有的使用绘图等方式自定义一个控件,这些方法要么抛弃了CheckBox这种便捷的开关功能,要么使用了繁琐复杂的方法来实现,有些得不偿失。这里我介绍使用VS原生的CheckBox,以最简单的方法实现漂亮的开关控件。
准备的图片可以到网络下载、自己PS、或者由UI专业定制符合自己的像素等要求。举例:

将资在项目的属性中的资源选项中添加资源,添加到之后,资源中就可以预览到你的图片样式。

这一步最为关键,也是最简单的,将控件添加到Form界面,修改属性。

除了控件名称,首先,要Appranrance的属性改为button按键风格;
其次,必须将FlatStyle先改为Flat,才可以修改部分外观的属性;
最后,将默认的资源文件添加显示到界面,非常方便;
注意,如果图片存在透明背景,要设置好FlatAppranrance使控件其背景颜色一致。

最后添加几句代码,将图片的变化加入CeckBox控件的CheckedChanged事件中。
private void checkBox_buttomSW_CheckedChanged(object sender, EventArgs e)
{
if (checkBox_buttomSW.Checked)
{
checkBox_buttomSW.Image = Properties.Resources.sw_on;
}
else
{
checkBox_buttomSW.Image = Properties.Resources.sw_off;
}
}
开关的运行效果如下


哇塞!是不是觉得特简单。
我认为这个方法是最快最简单实现一个漂亮开关的方法了,因为是CheckBox,状态还随时获取,也不用增加其它变量,是不是很实用很方便呀!