Winform ComboBox如何独立绘制下拉选项的字体颜色

 更新时间:2020年11月24日 09:16:23   作者:沙奇码丶  
这篇文章主要介绍了Winform ComboBox如何独立绘制下拉选项的字体颜色,帮助大家更好的理解和使用c# winform,感兴趣的朋友可以了解下

众所周知,cbo1.ForeColor会同时改变cbo1.Text和下拉选项字体颜色。

独立绘制下拉选项字体颜色,ForeColor 只对 cbo1.Text 颜色有效的办法,示例:

private void cb7_DrawItem(object sender, DrawItemEventArgs e)
{
  DrawCboItems(sender, e);
}

private void cb7_SelectedIndexChanged(object sender, EventArgs e)
{
  SetCboTextColor(sender);
}

private void SetCboTextColor(object sender)
{
  ComboBox cbx = sender as ComboBox;
  if (cbx.Text == "+")
    cbx.ForeColor = Color.Red;
  else
    cbx.ForeColor = Color.Black;
}

private void DrawCboItems(object sender, DrawItemEventArgs e)
{
  ComboBox cbo = sender as ComboBox;

  //初始化字体和背景色
  Pen fColor = new Pen(Color.Black);
  Pen bColor = new Pen(Color.White);

  switch (e.Index)
  {     //下拉选项的索引
    case 1:
    {
      fColor = new Pen(Color.Red);
      break;
    }
  }

  e.Graphics.FillRectangle(bColor.Brush, e.Bounds);
  e.Graphics.DrawString((string)cbo.Items[e.Index], this.Font, fColor.Brush, e.Bounds);
}

以上就是Winform ComboBox如何独立绘制下拉选项的字体颜色的详细内容,更多关于Winform ComboBox绘制字体颜色的资料请关注脚本之家其它相关文章!

相关文章

  • Unity实现背景图片淡入淡出效果

    Unity实现背景图片淡入淡出效果

    这篇文章主要为大家详细介绍了Unity实现背景图片淡入淡出,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-02-02
  • C#完成word文档打印的方法

    C#完成word文档打印的方法

    在日常工作中,我们可能常常需要打印各种文件资料,比如word文档。对于编程员,应用程序中文档的打印是一项非常重要的功能,也一直是一个非常复杂的工。这篇文章主要介绍了C#完成word文档打印的方法,需要的朋友可以参考下
    2016-10-10
  • C#实现对象的序列化和反序列化

    C#实现对象的序列化和反序列化

    这篇文章介绍了C#实现对象序列化和反序列化的方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-07-07
  • C#实现两个exe程序之间通信详解

    C#实现两个exe程序之间通信详解

    这篇文章主要为大家详细介绍了C#如何使用SendMessage实现两个程序之间的通信功能,文中的示例代码简洁易懂,需要的小伙伴可以参考下
    2023-07-07
  • C#实现条形码识别的解决方案分享

    C#实现条形码识别的解决方案分享

    主流的识别库主要有ZXing.NET和ZBar,OpenCV 4.0后加入了QR码检测和解码功能,所以本文主要和大家分享了使用ZBar进行条形码识别的示例代码,需要的可以参考一下
    2023-07-07
  • C#在Unity游戏开发中进行多线程编程的方法

    C#在Unity游戏开发中进行多线程编程的方法

    这篇文章主要介绍了C#在Unity游戏开发中进行多线程编程的方法,文中总结了Unity中使用多线程的几种方式以及一款多线程插件的介绍,需要的朋友可以参考下
    2016-04-04
  • C#中dynamic的使用方法及应用场景

    C#中dynamic的使用方法及应用场景

    在 C# 编程中,dynamic 类型是一个非常特殊的类型,它在编译时并不会进行类型检查,而是在运行时才进行类型解析,本文将详细讲解 dynamic 的使用方法、优缺点以及一些实际应用场景,需要的朋友可以参考下
    2024-08-08
  • C#接口在派生类和外部类中的调用方法示例

    C#接口在派生类和外部类中的调用方法示例

    这篇文章主要介绍了C#接口在派生类和外部类中的调用方法,结合实例形式分析了C#接口的定义与具体使用方法,需要的朋友可以参考下
    2017-02-02
  • C# WinForm中禁止改变窗口大小的方法

    C# WinForm中禁止改变窗口大小的方法

    这篇文章主要介绍了C# WinForm中禁止改变窗口大小的方法,需要把FormBorderStyle和MaximizeBox的值固定即可,需要的朋友可以参考下
    2014-08-08
  • C# wpf使用ListBox实现尺子控件的示例代码

    C# wpf使用ListBox实现尺子控件的示例代码

    本文主要介绍了C# wpf使用ListBox实现尺子控件的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-07-07

最新评论