zoukankan      html  css  js  c++  java
  • Devexpress GridView 数据格式化显示

    Devexpress GridView 数据格式化显示

    复制代码

     gridView1.CustomColumnDisplayText += gridView1_CustomColumnDisplayText;
     void gridView1_CustomColumnDisplayText(object sender, DevExpress.XtraGrid.Views.Base.CustomColumnDisplayTextEventArgs e)
            {
                if (e.Column.FieldName == "State")
                {
                    switch (e.DisplayText)
                    {
                        case "0":
                            e.DisplayText = "有效";
                            break;
                        case "1":
                            e.DisplayText = "无效";
           
                            break;
                    }
                }
            }

    复制代码

    复制代码

        void gridView1_CustomDrawCell(object sender, DevExpress.XtraGrid.Views.Base.RowCellCustomDrawEventArgs e)
            {
                var currentView = sender as GridView;
                if (currentView != null && e.RowHandle == currentView.FocusedRowHandle) return;
                Rectangle r = e.Bounds;
                if (e.Column.FieldName == "F_State")
                {
                    if (e.CellValue.ToString().Equals("False"))
                    {
                        e.Appearance.ForeColor=Color.Red;
                        e.Appearance.DrawString(e.Cache,e.DisplayText,r);
                        e.Handled = true;
                    }
    
                }
            }
    
    或者以下面的这种形式也可以的、
    
       
      还有一个就是改变行的颜色
      在对GridControl绑定好数据后:
      No.1:右键GridControl选择Run Designer;
      No.2:Appearance下Style Conditions点击Add,需要注意的是每一个变色条件都得Add一个变色方案;
      No.3:在Properties中需要用到的属性依次往下详解为:
      a)Appearance下BackColor=255.255.128,BackColor2=255.255.128,此项指定符合特定条件时单元格/行背景颜色,如果两项设置颜色不同时则为渐变效果;
     
      
    
      要是每次都这样设置也太不方便了。。所以我又封装了一个方法
    

    复制代码

            public void SetColumnFormatCell(object value1, object value2,Color backColor1,Color backColor2,GridColumn gridColumn,FormatConditionEnum formatType,GridView gridView)
            {
                var styleFormatCondition1 = new StyleFormatCondition();
                styleFormatCondition1.Appearance.BackColor = backColor1;
                styleFormatCondition1.Appearance.BackColor2 =backColor2;
                styleFormatCondition1.Appearance.Options.UseBackColor = true;
                styleFormatCondition1.Column = gridColumn;
                styleFormatCondition1.Condition = formatType;
                styleFormatCondition1.Expression = "true";
                styleFormatCondition1.Value1 = value1;
                styleFormatCondition1.Value2 = value2;
                gridView.FormatConditions.Add(styleFormatCondition1);
            }

    复制代码

    调用:
      var dev=new DataGridControlHelper();
          dev.SetColumnFormatCell("无效","无效",Color.Red,Color.Red,gridColumn03,FormatConditionEnum.Equal,gridView1);
            
    
     虽然效果是出来了。但是我觉得效率很差。
        要是有那位网友有更好的方案。请分享一下。谢谢

    复制代码

    作者:在水一方

    出处:http://www.cnblogs.com/w2011

    欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利.

    如果您觉得阅读本文对您有帮助,请点一下“推荐”按钮,谢谢

  • 相关阅读:
    剖析HBase负载均衡和性能指标
    Hadoop大数据挖掘从入门到进阶实战
    实战Kafka ACL机制
    论文笔记系列--MnasNet:Platform-Aware Neural Architecture Search for Mobile
    在 Vim 中优雅地查找和替换
    VIM的列编辑操作
    理解Pytorch中LSTM的输入输出参数含义
    Python为什么要用抽象类(abc模块)?
    概率密度估计介绍
    Docker永久挂载本地目录
  • 原文地址:https://www.cnblogs.com/grj001/p/12225270.html
Copyright © 2011-2022 走看看