public override Type GetCellType(GridViewColumn column)
        {
            GridViewIndentColumn viewIndentColumn = column as GridViewIndentColumn;

            if (viewIndentColumn != null && viewIndentColumn.IndentLevel == -1)
            {
                return(typeof(GridGroupExpanderCellElement));
            }
            return(base.GetCellType(column));
        }
Beispiel #2
0
        private GridViewIndentColumn GetIndentColumn(int level)
        {
            for (int index = this.cachedIndentColumns.Count - 1; index >= 0; --index)
            {
                GridViewIndentColumn cachedIndentColumn = this.cachedIndentColumns[index];
                if (cachedIndentColumn.IndentLevel == level)
                {
                    this.cachedIndentColumns.RemoveAt(index);
                    this.indentColumns.Add(cachedIndentColumn);
                    return(cachedIndentColumn);
                }
            }
            GridViewIndentColumn viewIndentColumn = new GridViewIndentColumn(this.ViewTemplate, level);

            this.indentColumns.Add(viewIndentColumn);
            return(viewIndentColumn);
        }
        public override Type GetCellType(GridViewColumn column)
        {
            GridViewGroupRowInfo rowInfo          = (GridViewGroupRowInfo)this.RowInfo;
            GridViewIndentColumn viewIndentColumn = column as GridViewIndentColumn;

            if (viewIndentColumn != null)
            {
                if (rowInfo.Group.Level == viewIndentColumn.IndentLevel)
                {
                    return(typeof(GridGroupExpanderCellElement));
                }
                if (rowInfo.Group.Level < viewIndentColumn.IndentLevel)
                {
                    return((Type)null);
                }
            }
            if (column == null)
            {
                return(typeof(GridGroupContentCellElement));
            }
            return(base.GetCellType(column));
        }
        public override bool IsCompatible(GridViewColumn data, object context)
        {
            GridViewIndentColumn viewIndentColumn = data as GridViewIndentColumn;

            return(viewIndentColumn != null && viewIndentColumn.IndentLevel == -1);
        }