internal static void SetHeaders(ExcelWorksheet sheet, int rownum, Dictionary <string, ColumnHeader> headers, object o) { if (o == null) { throw new ArgumentNullException("Parameter o is null."); } int maxCol = 1; foreach (PropertyInfo prop in o.GetType().GetProperties()) { if (prop.PropertyType.GetInterface("IColumDataType") == null) { continue; } IColumDataType cdt = (IColumDataType)prop.GetValue(o, null); if (cdt == null) { continue; } SetHeader(sheet, rownum, headers, cdt.ColumnNumber); if (cdt.ColumnNumber > maxCol) { maxCol = cdt.ColumnNumber; } } SetRowColour(sheet, rownum, maxCol, Colours.HeaderColour, true); }
public static int GetLastColumnNumber(object o) { if (o == null) { return(0); } int retval = 1; foreach (PropertyInfo prop in o.GetType().GetProperties()) { if (prop.PropertyType.GetInterface("IColumDataType") == null) { continue; } IColumDataType cdt = (IColumDataType)prop.GetValue(o, null); if (cdt != null && cdt.ColumnNumber > retval) { retval = cdt.ColumnNumber; } } return(retval); }