根据条件单元格的值改变单元格的显示色块和文字颜色等属性。

        #region 设置单元格样式(设置背景色)
        /// <summary>
        /// 设置单元格样式(设置背景色)
        /// </summary>
        /// <param name="gridView"></param>
        /// <param name="fieldName">"States";"OrderStatus"</param>
        /// <param name="color">Color.Green;Color.FromArgb(30, 119, 194)</param>
        /// <param name="expression">表达式(条件),如[LowPrice] > [PrevPrice];"AuditStatus=='已审核'";[Name] != ?</param>
        public static void SetStyleFormatCondition(this GridView gridView, string fieldName, Color color, string expression)
        {
            GridColumn gc = gridView.Columns[fieldName];
            StyleFormatCondition condition1 = new DevExpress.XtraGrid.StyleFormatCondition();
            condition1.Column = gc;
            condition1.Appearance.BackColor = color;
            condition1.Appearance.Options.UseBackColor = true;
            condition1.Condition = FormatConditionEnum.Expression;
            condition1.Expression = expression;
            gridView.FormatConditions.Add(condition1);
        }
        /// <summary>
        /// 设置单元格样式(设置背景色)
        /// </summary>
        /// <param name="gridView"></param>
        /// <param name="fieldName">"States";"OrderStatus"</param>
        /// <param name="color">Color.Green;Color.FromArgb(30, 119, 194)</param>
        /// <param name="condition">FormatConditionEnum.Equal;None,Equal,NotEqual,Between,NotBetween,Less,Greater,GreaterOrEqual,LessOrEqual,Expression,</param>
        /// <param name="conditionValue1">0;"已提交"</param>
        /// <param name="conditionValue2">用于两个值取区间</param>
        public static void SetStyleFormatCondition(this GridView gridView, string fieldName, Color color, FormatConditionEnum condition, object conditionValue1, object conditionValue2)
        {
            GridColumn gc = gridView.Columns[fieldName];
            StyleFormatCondition condition1;
            if (conditionValue2 == null)
            {
                condition1 = new DevExpress.XtraGrid.StyleFormatCondition(condition, gc, null,
                    conditionValue1);
            }
            else
            {
                condition1 = new DevExpress.XtraGrid.StyleFormatCondition(condition, gc, null,
                    conditionValue1, conditionValue2);
            }
            condition1.Appearance.BackColor = color;
            condition1.Appearance.Options.UseBackColor = true;
            gridView.FormatConditions.Add(condition1);
        }
        #endregion


        #region 设置单元格(字体颜色)
        /// <summary>
        /// 设置单元格(字体颜色)
        /// </summary>
        /// <param name="gridView"></param>
        /// <param name="fieldName">"States";"OrderStatus"</param>
        /// <param name="color">Color.Green;Color.FromArgb(30, 119, 194)</param>
        /// <param name="expression">表达式(条件),如[LowPrice] > [PrevPrice];"AuditStatus=='已审核'";[Name] != ?</param>
        public static void SetStyleFormatFontCondition(this GridView gridView, string fieldName, Color color, string expression)
        {
            GridColumn gc = gridView.Columns[fieldName];
            StyleFormatCondition condition1 = new DevExpress.XtraGrid.StyleFormatCondition();
            condition1.Column = gc;
            condition1.Appearance.ForeColor = color;
            condition1.Appearance.Options.UseForeColor = true;
            condition1.Appearance.Options.UseTextOptions = true;
            condition1.Condition = FormatConditionEnum.Expression;
            condition1.Expression = expression;
            gridView.FormatConditions.Add(condition1);
        }
        /// <summary>
        /// 设置单元格(字体颜色)
        /// </summary>
        /// <param name="gridView"></param>
        /// <param name="fieldName">"States";"OrderStatus"</param>
        /// <param name="color">Color.Green;Color.FromArgb(30, 119, 194)</param>
        /// <param name="condition">FormatConditionEnum.Equal;FormatConditionEnum.GreaterOrEqual</param>
        /// <param name="conditionValue1">0;"已提交"</param>
        /// <param name="conditionValue2">用于与conditionValue1求区间范围</param>
        public static void SetStyleFormatFontCondition(this GridView gridView, string fieldName, Color color, FormatConditionEnum condition, object conditionValue1,object conditionValue2 = null)
        {
            GridColumn gc = gridView.Columns[fieldName];
            StyleFormatCondition condition1;
            if (conditionValue2 == null)
            {
                condition1 = new DevExpress.XtraGrid.StyleFormatCondition(condition, gc, null,
                    conditionValue1);
            }
            else
            {
                condition1 = new DevExpress.XtraGrid.StyleFormatCondition(condition, gc, null,
                    conditionValue1, conditionValue2);
            }
            condition1.Appearance.ForeColor = color;
            condition1.Appearance.Options.UseForeColor = true;
            condition1.Appearance.Options.UseTextOptions = true;
            gridView.FormatConditions.Add(condition1);
        }
        #endregion

 

设置列背景色  https://www.cnblogs.com/MuNet/p/5736172.html
Devexpress GridView 数据根据不同条件格式化显示色块和文字颜色  http://www.zhimengzhe.com/asp_netjiaocheng/161557.html
Devexpress Winform Gridcontrol 中根据条件单元格的值改变单元格的颜色等属性。  http://www.lxway.com/668495256.htm

 

condition1.Expression = "[Name] != ?"; //Name字段不为空

cn.Appearance.BackColor = Color.Green;

转载于:https://www.cnblogs.com/shy1766IT/p/8178015.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值