Winform ComboBox如何独立绘制下拉选项的字体颜色
众所周知,cbo1.ForeColor会同时改变cbo1.Text和下拉选项字体颜色。
独立绘制下拉选项字体颜色,ForeColor只对cbo1.Text颜色有效的办法,示例:
privatevoidcb7_DrawItem(objectsender,DrawItemEventArgse)
{
DrawCboItems(sender,e);
}
privatevoidcb7_SelectedIndexChanged(objectsender,EventArgse)
{
SetCboTextColor(sender);
}
privatevoidSetCboTextColor(objectsender)
{
ComboBoxcbx=senderasComboBox;
if(cbx.Text=="+")
cbx.ForeColor=Color.Red;
else
cbx.ForeColor=Color.Black;
}
privatevoidDrawCboItems(objectsender,DrawItemEventArgse)
{
ComboBoxcbo=senderasComboBox;
//初始化字体和背景色
PenfColor=newPen(Color.Black);
PenbColor=newPen(Color.White);
switch(e.Index)
{//下拉选项的索引
case1:
{
fColor=newPen(Color.Red);
break;
}
}
e.Graphics.FillRectangle(bColor.Brush,e.Bounds);
e.Graphics.DrawString((string)cbo.Items[e.Index],this.Font,fColor.Brush,e.Bounds);
}
以上就是WinformComboBox如何独立绘制下拉选项的字体颜色的详细内容,更多关于WinformComboBox绘制字体颜色的资料请关注毛票票其它相关文章!