温风徐徐来

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

使用ListBox时,每行显示不同的颜色

1、把AllowHtmlDraw属性设置为True

2、直接在Add或者AddRange里写标签

代码里用的是DEV插件里的ListBox,使用原生的也是一样的写法

 

使用AddRange写法:

1 listBoxControl2.AllowHtmlDraw = DevExpress.Utils.DefaultBoolean.True;
2 
3 listBoxControl2.Items.AddRange(new object[] {
4                         "我是红色的 <color=Red>Red</color>",
5                         "<color=Green>我是绿色的</color>",
6                         "<color=Blue>Blue</color> 我是蓝色的"
7                     });

 

使用Add写法:

listBoxControl.Items.Add("<color=Red>我是红色的</color>");

 

可以封装一下:

private void ListMsg(string msg, MsgLevel msgLevel)
        {
            listBoxControl.BeginInvoke(new Action(() =>
            {
                listBoxControl.Items.Add("<color=" + GetColor(msgLevel) + ">" + DateTime.Now.ToString("HH:mm") + " " + msg + "</color>");

                //滚动到最后一行
                if (this.listBoxControl.Items.Count > 0)
                {
                    this.listBoxControl.SelectedIndex = listBoxControl.Items.Count - 1;
                }
            }));
        }

枚举:

private enum MsgLevel
        {
            /// <summary>
            /// 0.调试信息输出
            /// </summary>
            Debug = 0,
            /// <summary>
            /// 1.业务信息记录
            /// </summary>
            Info = 1,
            /// <summary>
            /// 2.警告提醒(捕获的业务异常)
            /// </summary>
            Warn = 2,
            /// <summary>
            /// 3.发生了异常(捕获的系统异常)
            /// </summary>
            Exception = 3,
            /// <summary>
            /// 4.发生致命异常(未被捕获的异常|捕获的业务逻辑异常)
            /// </summary>
            Fatal = 4
        }
        private string GetColor(MsgLevel msgLevel)
        {
            string strColor = "Black";
            switch (msgLevel)
            {
                case MsgLevel.Debug:
                    strColor = "Black";
                    break;
                case MsgLevel.Info:
                    strColor = "Black";
                    break;
                case MsgLevel.Warn:
                    strColor = "Yellow";
                    break;
                case MsgLevel.Exception:
                    strColor = "Purple";
                    break;
                case MsgLevel.Fatal:
                    strColor = "Red";
                    break;
                default:
                    strColor = "Black";
                    break;
            }
            return strColor;
        }

 

 

 

 

 

 

随着时光的流逝,或许所有存在的东西都会消失,若最初,我们是奔着一个方向而往,最终,却很有可能会寻觅到了另外一种存在,也并非是忘记初心,而是时光早已赋予它不同的使命。

 

现实有多残酷,我们就有多坚强。
别说生活欺骗了你世界的模样,取决于你凝聚他的目光。
从怯懦到勇敢,是给自己最好的礼物。

 

所谓的成长,就是有一天我们可以把最重要的精力,放在最重要的人和最重要的事上。

 

posted on 2018-02-12 09:58  温风徐徐来  阅读(8354)  评论(4编辑  收藏  举报