public IXLColumns FindColumns(Func <IXLColumn, Boolean> predicate) { var columns = new XLColumns(null); foreach (XLWorksheet ws in WorksheetsInternal) { foreach (IXLColumn column in ws.Columns().Where(predicate)) { columns.Add(column as XLColumn); } } return(columns); }
public IXLColumns ColumnsUsed(Boolean includeFormats = false, Func<IXLColumn, Boolean> predicate = null) { var columns = new XLColumns(Worksheet); var columnsUsed = new HashSet<Int32>(); Internals.ColumnsCollection.Keys.ForEach(r => columnsUsed.Add(r)); Internals.CellsCollection.ColumnsUsed.Keys.ForEach(r => columnsUsed.Add(r)); foreach (var columnNum in columnsUsed) { var column = Column(columnNum); if (!column.IsEmpty(includeFormats) && (predicate == null || predicate(column))) columns.Add(column); else column.Dispose(); } return columns; }
public IXLColumns Columns(Int32 firstColumn, Int32 lastColumn) { var retVal = new XLColumns(null); for (int co = firstColumn; co <= lastColumn; co++) retVal.Add(Column(co)); return retVal; }
public IXLColumns Columns(String columns) { var retVal = new XLColumns(null); var columnPairs = columns.Split(','); foreach (string tPair in columnPairs.Select(pair => pair.Trim())) { String firstColumn; String lastColumn; if (tPair.Contains(':') || tPair.Contains('-')) { var columnRange = XLHelper.SplitRange(tPair); firstColumn = columnRange[0]; lastColumn = columnRange[1]; } else { firstColumn = tPair; lastColumn = tPair; } Int32 tmp; if (Int32.TryParse(firstColumn, out tmp)) { foreach (IXLColumn col in Columns(Int32.Parse(firstColumn), Int32.Parse(lastColumn))) retVal.Add((XLColumn)col); } else { foreach (IXLColumn col in Columns(firstColumn, lastColumn)) retVal.Add((XLColumn)col); } } return retVal; }
public IXLColumns Columns() { var retVal = new XLColumns(this); var columnList = new List<Int32>(); if (Internals.CellsCollection.Count > 0) columnList.AddRange(Internals.CellsCollection.ColumnsUsed.Keys); if (Internals.ColumnsCollection.Count > 0) columnList.AddRange(Internals.ColumnsCollection.Keys.Where(c => !columnList.Contains(c))); foreach (int c in columnList) retVal.Add(Column(c)); return retVal; }
public IXLColumns FindColumns(Func<IXLColumn, Boolean> predicate) { var columns = new XLColumns(null); foreach (XLWorksheet ws in WorksheetsInternal) { foreach (IXLColumn column in ws.Columns().Where(predicate)) columns.Add(column as XLColumn); } return columns; }