/// <summary> /// Initializes a new instance of the <see cref="TableColumn"/> class. /// </summary> /// <param name="header">The <see cref="string"/> instance to use as the table column header.</param> public TableColumn(string header, TableColumnType columnType = TableColumnType.Default, TableColumnAlignment alignment = TableColumnAlignment.Left) { Header = header ?? throw new ArgumentNullException(nameof(header)); Alignment = alignment; ColumnType = columnType; }
public static string Align(this string text, TableColumnAlignment alignment, int width) { switch (alignment) { case TableColumnAlignment.Center: var count1 = Math.Max(0, (width - text.Length) / 2); var count2 = Math.Max(0, width - text.Length - count1); return(string.Format("{0}{1}{2}", new string(' ', count1), text, new string(' ', count2))); case TableColumnAlignment.Right: return(text.PadLeft(width)); default: return(text.PadRight(width)); } }
public static string Align(this string text, TableColumnAlignment alignment, int width) { switch (alignment) { case TableColumnAlignment.Center: var leftPad = Math.Max(0, (width - text.Length) / 2); var rightPad = Math.Max(0, width - text.Length - leftPad); var paddedString = string.Format("{0}{1}{2}", new String(' ', leftPad), text, new String(' ', rightPad)); return paddedString; case TableColumnAlignment.Right: return text.PadLeft(width); case TableColumnAlignment.Left: case TableColumnAlignment.Unspecified: default: return text.PadRight(width); } }
public static string Align(this string text, TableColumnAlignment alignment, int width) { switch (alignment) { case TableColumnAlignment.Center: var leftPad = Math.Max(0, (width - text.Length) / 2); var rightPad = Math.Max(0, width - text.Length - leftPad); var paddedString = string.Format("{0}{1}{2}", new String(' ', leftPad), text, new String(' ', rightPad)); return(paddedString); case TableColumnAlignment.Right: return(text.PadLeft(width)); case TableColumnAlignment.Left: case TableColumnAlignment.Unspecified: default: return(text.PadRight(width)); } }
internal TableCellRenderSpecification(TableColumnAlignment alignment, int maximumWidth) { _alignment = alignment; _maximumWidth = maximumWidth; }
public TableCellRenderSpecificationExtended(TableColumnAlignment alignment, int maximumWidth) { _alignment = alignment; _maximumWidth = maximumWidth; }
/// <summary> /// Adds a column to the table. /// </summary> /// <param name="column">The column to add.</param> /// <returns>The same instance so that multiple calls can be chained.</returns> public Table AddColumn(string header, TableColumnType columnType = TableColumnType.Default, TableColumnAlignment alignment = TableColumnAlignment.Left) => AddColumn(new TableColumn(header, columnType, alignment));