自定义颜色显示的CheckBox
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using System.Drawing; using System.ComponentModel; namespace ColorCheckControls { public class CustomCheckBox: CheckBox { private Color _CheckColor; private void PaintHandler(object sender, PaintEventArgs args) { if (this.Checked) { Point pt = new Point(); if (this.CheckAlign == ContentAlignment.BottomCenter) { pt.X = () - ; pt.Y = ; } if (this.CheckAlign == ContentAlignment.BottomLeft) { pt.X = ; pt.Y = ; } if (this.CheckAlign == ContentAlignment.BottomRight) { pt.X = ; pt.Y = ; } if (this.CheckAlign == ContentAlignment.MiddleCenter) { pt.X = () - ; pt.Y = () - ; } if (this.CheckAlign == ContentAlignment.MiddleLeft) { pt.X = ; pt.Y = () - ; } if (this.CheckAlign == ContentAlignment.MiddleRight) { pt.X = ; pt.Y = () - ; } if (this.CheckAlign == ContentAlignment.TopCenter) { pt.X = () - ; pt.Y = ; } if (this.CheckAlign == ContentAlignment.TopLeft) { pt.X = ; pt.Y = ; } if (this.CheckAlign == ContentAlignment.TopRight) { pt.X = ; pt.Y = ; } DrawCheck(args.Graphics, this.CheckColor, pt); } } private void DrawCheck(Graphics g, Color c, Point pt) { Pen pen = new Pen(c); g.DrawLine(pen, pt.X, pt.Y + , pt.X + , pt.Y + ); g.DrawLine(pen, pt.X, pt.Y + , pt.X + , pt.Y + ); g.DrawLine(pen, pt.X, pt.Y + , pt.X + , pt.Y + ); g.DrawLine(pen, pt.X + , pt.Y + , pt.X + , pt.Y - ); g.DrawLine(pen, pt.X + , pt.Y + , pt.X + , pt.Y); g.DrawLine(pen, pt.X + , pt.Y + , pt.X + , pt.Y + ); } public CustomCheckBox() { this._CheckColor = ForeColor; this.Paint += new PaintEventHandler(this.PaintHandler); } [Description("CheckBox复选框颜色")] public Color CheckColor { get { return _CheckColor; } set { _CheckColor = value; Invalidate(); } } } }
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using System.Drawing; using System.ComponentModel; namespace ColorCheckControls { public class CustomColorRadioButton: RadioButton { private Color _CheckColor; private void PaintHandler(object sender, PaintEventArgs args) { if (this.Checked) { Point pt = new Point(); if (CheckAlign == ContentAlignment.BottomCenter) { pt.X = () - ; pt.Y = ; } if (CheckAlign == ContentAlignment.BottomLeft) { pt.X = ; pt.Y = ; } if (CheckAlign == ContentAlignment.BottomRight) { pt.X = ; pt.Y = ; } if (CheckAlign == ContentAlignment.MiddleCenter) { pt.X = () - ; pt.Y = () - ; } if (CheckAlign == ContentAlignment.MiddleLeft) { pt.X = ; pt.Y = () - ; } if (CheckAlign == ContentAlignment.MiddleRight) { pt.X = ; pt.Y = () - ; } if (CheckAlign == ContentAlignment.TopCenter) { pt.X = () - ; pt.Y = ; } if (CheckAlign == ContentAlignment.TopLeft) { pt.X = ; pt.Y = ; } if (CheckAlign == ContentAlignment.TopRight) { pt.X = ; pt.Y = ; } DrawCheck(args.Graphics, this.CheckColor, pt); } } private void DrawCheck(Graphics g, Color c, Point pt) { /* Pen pen = new Pen(c); g.DrawLine(pen, pt.X, pt.Y + 1, pt.X + 4, pt.Y + 1); g.DrawLine(pen, pt.X-1, pt.Y + 2, pt.X + 5, pt.Y + 2); g.DrawLine(pen, pt.X, pt.Y + 3, pt.X + 4, pt.Y + 3); g.DrawLine(pen, pt.X + 1, pt.Y, pt.X + 1, pt.Y + 4); g.DrawLine(pen, pt.X + 2, pt.Y-1, pt.X + 2, pt.Y + 5); g.DrawLine(pen, pt.X + 3, pt.Y, pt.X + 3, pt.Y + 4); * */ Brush brush = new SolidBrush(c); g.FillEllipse(brush, pt.X-, pt.Y-, , ); } public CustomColorRadioButton() { this._CheckColor = this.ForeColor; this.Paint += new PaintEventHandler(this.PaintHandler); } [Description("按钮颜色")] public Color CheckColor { get { return _CheckColor; } set { _CheckColor = value; Invalidate(); } } } }
自定义颜色显示的CheckBox的更多相关文章
- 【Android学习】自定义Android样式checkbox
下面简单介绍下在Androdi中如何更改Checkbox的背景图片,可以自定义样式 1.首先res/drawable中定义编写如下样式的XML,命名为:checkbox_style: <?xml ...
- 自定义input[type="checkbox"]的样式
对复选框自定义样式,我们以前一直用的脚本来实现,不过现在可以使用新的伪类 :checkbox 来实现. 如果直接对复选框设置样式,那么这个伪类并不实用,因为没有多少样式能够对复选框起作用.不过,倒是可 ...
- 原生javascript自定义input[type=checkbox]效果
2018年6月27日 更新 能用css3,就不用js 用纯css3实现样式重写 <!DOCTYPE html> <html lang="en"> < ...
- 自定义radio、checkbox的样式
input标签中的radio和checkbox是很表单中常用的类型,大多时候,默认样式并不能满足我们的需求,所以有了此篇. 自定义样式,由此开启: html: <div class=" ...
- 关于input 的选中,自定义input[type="checkbox"]样式
1.css 呈现 选中后 的input的样式可以用 /*背景图*/ background:url('../pc/images/archives/icon_choosed.png') no ...
- ZH奶酪:纯CSS自定义Html中Checkbox复选框样式
原文链接:http://www.lrxin.com/archives-683.html 首先看下效果: 点击演示地址查看实例. 首先,需要添加一段CSS隐藏所有的Checkbox复选框,之后我们会改变 ...
- 自定义input[type="checkbox"]样式
input[type=checkbox] { visibility: hidden; position: relative;} input[type=checkbox]:after { content ...
- WPF CheckBox 自定义样式
WPF 自定义样式.CheckBox <Style x:Key="EmptyCheckBox" TargetType="CheckBox"> < ...
- 自定义checkbox样式
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
随机推荐
- JS页面打印,预览,设置,分页
一)在HTML页中加载打印对象 <object id="WebBrowser" width="0" height="0" classi ...
- HTML特殊符号对应代码
HTML中的特殊符号所对应代码,收藏使用 符号 HTML 符号 HTML & & < < > > ⁄ ⁄ " " ¸ ¸ ° ° ½ ...
- [转]AndroidManifest.xml文件详解
转自:http://www.cnblogs.com/greatverve/archive/2012/05/08/AndroidManifest-xml.html AndroidManifest.xml ...
- hdu 2077
PS:汉诺塔问题....找规律...观察发现,先是小的移动到B,然后大的移动到C(两步),然后小的移动到C,完成.刚开始就以为是f(n)=2f(n-1)+2..然而,小的移动一步是需要f(n)=3f( ...
- hd oj2015
#include "stdio.h"int main(){ int n,m,k,num,i,sum=0; while(~scanf("%d%d",&n, ...
- 20145210 《Java程序设计》第08周学习总结
第十四章 NIO与NIO2 14.1 认识NIO •NIO概述 •NIO使用频道来衔接数据结点 •在处理数据时,NIO可以让你设定缓冲区容量 •Channel架构与操作 •isOpen():确认Cha ...
- 16、SQL基础整理(触发器.方便备份)
触发器(方便备份) 本质上还是一个存储过程,只不过不是通过exec来调用执行,而是通过增删改数据库的操作来执行(可以操作视图) 全部禁用触发器 alter table teacher disable ...
- 把input类型剔出来
<!doctype html public "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- AssemblyInfo.cs的作用
总结:用来设置项目生成的dll的常规信息.(如版本.版权等等)它就相当于一个资源文件,存放资源信息. http://www.cnblogs.com/xuyuantao/articles/927285. ...
- jQuery对象与DOM对象之间的转换
刚开始学习jQuery,可能一时会分不清楚哪些是jQuery对象,哪些是DOM对象.至于DOM对象不多解释,我们接触的太多了,下面重点介绍一下jQuery,以及两者相互间的转换. 什么是jQuery对 ...