如何去掉ComboBox易语言控件默认字体的深蓝色背景

1449人阅读
.NET(61)
看到VS属性设置中的颜色下拉框,于是也想做一个类似的颜色下拉框。最理想的还是VISIO的那种颜色选择方式,还是先从简单的开始,在可用的控件中首先想到的就是ComboBox选择控件,用系统颜色填充各个选项,用它的DrawItem事件完成:
private void Form1_Load(object sender, EventArgs e)
myComboBox.Items.Clear();
Array allColors = Enum.GetValues(typeof(KnownColor)); //获得系统颜色集合
foreach (KnownColor var in allColors)
myComboBox.Items.Add(var.ToString());
//加载该选项框的子项
myComboBox.SelectedIndex = 1;
private void myComboBox_DrawItem(object sender, DrawItemEventArgs e)
//判断是否需要重绘
if (e.Index &= 0)
string colorName = myComboBox.Items[e.Index].ToString();
//子项的颜色名
SolidBrush brush = new SolidBrush(Color.FromName(colorName)); //画笔
Font font = new Font(&宋体&, 9);
//字体样式
Brush brushs = Brushes.B
Rectangle rect = e.B
//获得需要重绘的区域
rect.Inflate(-2, -2);
//缩放一定大小
Rectangle rectColor = new Rectangle(rect.Location,new Size(20,rect.Height));
e.Graphics.FillRectangle(brush, rectColor);
// 填充颜色
e.Graphics.DrawRectangle(Pens.Black, rectColor);
// 绘制边框
//绘制文字
e.Graphics.DrawString(colorName, font, brushs, (rect.X+22), rect.Y);
同时还需要设置该控件的DrawMode和DropDownStyle属性,类似的控件Listbox也可按同样方法实现颜色选择,DrawMode属性为NORMAL时,有选中效果,但自己绘制的选项则不会出现选中效果,若想实现,可在DrawItem中加入一个状态判定,如:
//绘制选中效果
if ((e.State & DrawItemState.Selected) == DrawItemState.Selected)
SolidBrush brushItem = new SolidBrush(SystemColors.MenuHighlight); //画笔
Rectangle rectItem = e.B
e.Graphics.FillRectangle(brushItem, rectItem);
SolidBrush brushItem = new SolidBrush(SystemColors.Window); //画笔
Rectangle rectItem = e.B
e.Graphics.FillRectangle(brushItem, rectItem);
&&相关文章推荐
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:267130次
积分:3642
积分:3642
排名:第9392名
原创:66篇
转载:157篇
评论:23条
(2)(5)(2)(3)(1)(3)(1)(1)(1)(1)(3)(5)(2)(2)(1)(2)(1)(4)(2)(4)(6)(2)(2)(1)(4)(2)(3)(2)(8)(1)(6)(4)(16)(2)(9)(20)(18)(14)(21)(7)(2)(2)(5)(3)(14)(3)
(window.slotbydup = window.slotbydup || []).push({
id: '4740881',
container: s,
size: '200,200',
display: 'inlay-fix'网站已改版,请使用新地址访问:
ComboBox-color 一个简单的修改 背景颜色的VC程序。 组合框控件 238万源代码下载-
&文件名称: ComboBox-color
& & & & &&]
&&所属分类:
&&开发工具: Visual C++
&&文件大小: 23 KB
&&上传时间:
&&下载次数: 15
&&提 供 者:
&详细说明:一个简单的修改combobox背景颜色的VC程序。-set combobox color
文件列表(点击判断是否您需要的文件,如果是垃圾请在下面评价投诉):
(没有文件,原文件不完全或已损坏或有密码)
&近期下载过的用户:
&输入关键字,在本站238万海量源码库中尽情搜索:
&[] - 关于组合框的使用,选择组合框的内容,按下按钮,弹出刚才选择的内容的对话框
&[] - VC中如何改变对框中控件的颜色
&[] - 组合框(ComboBox):修改组合框颜色\字体\文字大小\高度
&[] - 自己封装一个类实现下拉列表框的绘制,包括Edit和Button两个地方的重绘}

我要回帖

更多关于 html 日期控件 默认值 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信