• 一个c# ColorListBox


    介绍 在这篇文章中,

      

    我们将看到如何编写所有者绘制列表框 控制。通常,Windows处理绘制要显示的项的任务 列表框。您可以使用DrawMode 属性并处理度量项 和DrawItem 事件提供覆盖该窗口的自动绘制能力 提供并自己画项目。您可以使用所有者绘制的列表框 控件以显示可变高度的项、图像或不同的颜色或字体 浏览列表中每个项目的文本。 描述 我们从创建一个Windows应用程序开始。添加列表框 设置窗体的DrawMode属性为OwnerDrawVariable。 或者,您可以将以下行添加到InitializeComponent 你的形式的功能, 隐藏,复制Code

    //lstColor is ListBox control
    this.lstColor.DrawMode = System.Windows.Forms.DrawMode.OwnerDrawVariable;

    下一步添加下列线以下的线以上 隐藏,复制Code

    //tell windows we are interested in drawing items in ListBox on our own
    this.lstColor.DrawItem += new DrawItemEventHandler(this.DrawItemHandler);
    
    //tell windows we are interested in providing  item size
    this.lstColor.MeasureItem += 
      new System.Windows.Forms.MeasureItemEventHandler(this.MeasureItemHandler);

    通过这样做,windows将发送DrawItem和MeasureItem事件给我们 每个项目添加到列表框。 接下来,为这些事件添加处理程序 隐藏,复制Code

    private void DrawItemHandler(object sender, DrawItemEventArgs e)
    {
        e.DrawBackground();
        e.DrawFocusRectangle();
        e.Graphics.DrawString(data[e.Index], 
                              new Font(FontFamily.GenericSansSerif, 
                                       14, FontStyle.Bold),
                              new SolidBrush(color[e.Index]), 
                              e.Bounds);
     
    }
    
    private void MeasureItemHandler(object sender, MeasureItemEventArgs e)
    {
        e.ItemHeight= 22;
    }

    在上面的代码中,date是保存要插入的项的数组,color是 类颜色数组 这是它。我们是做! 请在lparam@hotmail.com上给我留言 本文转载于:http://www.diyabc.com/frontweb/news232.html

  • 相关阅读:
    js 格式化时间
    js filter过滤数据
    vant 省市区三级联动 自定义json数据展示 取值
    移动端 table横向滚动
    js 判断字符串中是否包含某个字符串
    element ui form表单 刚进页面就验证
    js ES6 Promise.all 等两个接口都返回成功执行
    SDNU 1139.Emergency(起点更改最短路问题)
    SDNU 1062.Fibonacci(矩阵快速幂)
    SDNU 1103.买彩票(水题)
  • 原文地址:https://www.cnblogs.com/Dincat/p/13431192.html
Copyright © 2020-2023  润新知