zoukankan      html  css  js  c++  java
  • 读书笔记 UltraGrid(16)

    单元格合并
    当使用grid列示数据时,如果某一行某列数据和上一行的对应列数据相同时,我们想把该列的显示隐含。
    所有band中的所有列。
    this.ultraGrid1.DisplayLayout.Override.MergedCellStyle = MergedCellStyle.Always
    其值还可以是:
    OnlyWhenSorted:只在排序时候合并
    Never:从不合并

    也可以针对具体的列来设置,如:
    this.ultraGrid1.DisplayLayout.Bands[1].Columns["SpecWth"].MergedCellStyle = MergedCellStyle.Never;
    合并可以按文本相同或者值相同,如:
    this.ultraGrid1.DisplayLayout.Bands[1].Columns["SpecWth"].MergedCellEvaluationType = MergedCellEvaluationType.MergeSameText;

    但有时这种合并还是不能满足我们的要求,那我们可以自定义条件合并即可。
    实现如下:
    public class CustomMergedCellEvaluator : IMergedCellEvaluator
    {
            UltraGridColumn[] ugcs;
            public CustomMergedCellEvaluator(UltraGridColumn[] keys)
            {
                this.ugcs = keys;
            }

            public bool ShouldCellsBeMerged(UltraGridRow row1, UltraGridRow row2, UltraGridColumn column)
            {
                bool keyIsSame = KeyIsSame(row1, row2, this.ugcs);
                if (keyIsSame == true)
                    return row1.Cells[column].Value.ToString () == row2.Cells[column].Value.ToString();
                else
                    return false;
            }

            private bool KeyIsSame(UltraGridRow row1, UltraGridRow row2, UltraGridColumn[] keys)
            {
               //定义合并的逻辑
                return keyIsSame;
            }
    }

    这时我们在column中设置如下,即可按我们的条件合并了。
    ustomMergedCellEvaluator cmce = new CustomMergedCellEvaluator(new UltraGridColumn[]{ultraGrid1.DisplayLayout.Bands[1].Columns[0],ultraGrid1.DisplayLayout.Bands[1].Columns[1]});
    column.MergedCellEvaluator = cmce;
    column.MergedCellStyle = MergedCellStyle.Always;
    column.MergedCellEvaluationType = MergedCellEvaluationType.MergeSameText;
    其实现也就如此的简单。


     

  • 相关阅读:
    Jquery尺寸
    Jquery 位置
    c#编码规范
    手机即时通信文章列表
    缺陷跟踪系统BugTracker。 以下对使用
    用正则表达式来匹配图片标签
    mvc 分页
    Asp.Net MVC4网站中自定义AuthorizeAttribute
    asp.net mvc4 身份验证问题无法绕过内置的Membership/Role机制
    HDU4712Hamming Distance随机化算法
  • 原文地址:https://www.cnblogs.com/chump/p/2368141.html
Copyright © 2011-2022 走看看