public override Type GetCellType(GridViewColumn column) { GridViewIndentColumn viewIndentColumn = column as GridViewIndentColumn; if (viewIndentColumn != null && viewIndentColumn.IndentLevel == -1) { return(typeof(GridGroupExpanderCellElement)); } return(base.GetCellType(column)); }
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); }