状态栏控件StatusStrip对象ToolStripStatusLabel可以显示文本,现在我想要做的是,指定文本中某些字以红色显示,而其他字保留默认,望各位大虾相助哈!!!

解决方案 »

  1.   

    用3个label,中间的红色,其他的不变。
      

  2.   

    ToolStripStatusLabel显示的是一个控件(比如ListBox)的文本,然后在文本中显示关键字段为红色,其他的保留默认,不是3个控件,这样有没有办法实现???
      

  3.   

    没办法,而且我觉得也不必要为此自定义个控件.你用3个,设置autosize=true,再设置下颜色
      

  4.   

    要不画上去:
    ToolStripStatusLabel.paint事件:
    e.Graphics.DrawString("总计:", Me.Font, Brushes.Red, 0, 2)
    e.Graphics.DrawString("12593", Me.Font, Brushes.Blue, 35, 2)觉得还是1L方法不错。
      

  5.   

    那些字红色?在Label当前显示的内容全部为红色还是一部分?
    AAABBBCCCDDDEEEFFF  
     这样?
      

  6.   

    如果是全部,可在符合条件的时候设置Label的ForeColor,如果是部分(如上所示)!
    在自定义控件的时候记得要有足够的信息来让程序知道你到底想让哪部分变成红色!
      

  7.   

    就是这样的意思,现在我已经在RichBox实现AAABBBCCCDDDEEEFFF 了,但是在ToolStripStatusLabel显示时候又全是默认的黑色了,我实现的代码是这样的,Richbox.selectionColor = System.Drawing.Color.Red;先在Richbox里选择关键字让它变成红色,然后ToolStripStatusLabel.Text = Richbox.Text;但是运行实现的时候Richbox字体明明关键已经变红色了,但是为什么ToolStripStatusLabel显示的文字却是黑色的呢?????
      

  8.   

    是啊,怎么让程序判断哪部分是变成红色的呢,不容易呢,现在我在Richbox实现变成红色,那是我自己人为的选择的,而不是让程序自己判断的???
      

  9.   

    Richbox本身支持文本中有不同的字体大小颜色的,ToolStripStatusLabel不支持这些,
    除非你重写ToolStripStatusLabel这个控件,但难度不小啊