OfficeIMO

API Reference

Class

TableBuilder

Namespace OfficeIMO.Markdown
Assembly OfficeIMO.Markdown
Modifiers sealed

Builder for pipe tables.

Inheritance

  • Object
  • TableBuilder

Constructors

Methods

public TableBuilder Align(params ColumnAlignment[] alignments) #
Returns: TableBuilder

Sets column alignments for the table header/columns.

Parameters

alignments OfficeIMO.Markdown.ColumnAlignment[] requiredposition: 0
public TableBuilder AlignAll(ColumnAlignment alignment) #
Returns: TableBuilder

Sets a uniform alignment for all columns (applied to header + cells).

Parameters

alignment OfficeIMO.Markdown.ColumnAlignment requiredposition: 0
public TableBuilder AlignByHeaders(ColumnAlignment alignment, params String[] headerNames) #
Returns: TableBuilder

Align columns by matching header names (case-insensitive).

Parameters

alignment OfficeIMO.Markdown.ColumnAlignment requiredposition: 0
headerNames System.String[] requiredposition: 1
public TableBuilder AlignCenter(params Int32[] cols) #
Returns: TableBuilder

Set center alignment on specified 0-based column indexes. If none provided, all columns.

Parameters

cols System.Int32[] requiredposition: 0
public TableBuilder AlignDatesCenter(Double threshold = 0.6) #
Returns: TableBuilder

Guess date-like columns and center-align them. Threshold is fraction of date-like values required (0..1).

Parameters

threshold System.Double = 0.6 optionalposition: 0
public TableBuilder AlignLeft(params Int32[] cols) #
Returns: TableBuilder

Set left alignment on specified 0-based column indexes. If none provided, all columns.

Parameters

cols System.Int32[] requiredposition: 0
public TableBuilder AlignNone(params Int32[] cols) #
Returns: TableBuilder

Remove alignment (default) on specified 0-based column indexes. If none provided, all columns.

Parameters

cols System.Int32[] requiredposition: 0
public TableBuilder AlignNumericRight(Double threshold = 0.8) #
Returns: TableBuilder

Guess numeric columns by sampling values and align them right. Threshold is fraction of numeric-like values required (0..1).

Parameters

threshold System.Double = 0.8 optionalposition: 0
public TableBuilder AlignRight(params Int32[] cols) #
Returns: TableBuilder

Set right alignment on specified 0-based column indexes. If none provided, all columns.

Parameters

cols System.Int32[] requiredposition: 0
Columns 2 overloads
public TableBuilder Columns(Func<String, String> headerTransform) #
Returns: TableBuilder

Configures default column options for subsequent FromAny calls.

Parameters

configure System.Action{OfficeIMO.Markdown.TableFromOptions} requiredposition: 0
Columns(System.Func{System.String,System.String} headerTransform) #

Sets a simple header transform used for generating header text (e.g., prettifying PascalCase).

Parameters

headerTransform System.Func{System.String,System.String} required
FromAny 3 overloads
public TableBuilder FromAny(Object data) #
Returns: TableBuilder

Populates the table from an arbitrary object. If data is - a sequence of scalars → one-column table with a row per value, - a sequence of objects → headers from public readable properties and rows per item, - a dictionary → two columns Key/Value, - a POCO → two columns Property/Value.

Parameters

data System.Object requiredposition: 0
public TableBuilder FromAny(Object data, Action<TableFromOptions> configure) #
Returns: TableBuilder

Populates the table from arbitrary data with options (include/exclude/order).

Parameters

data System.Object requiredposition: 0
options OfficeIMO.Markdown.TableFromOptions requiredposition: 1
FromAny(System.Object data, System.Action{OfficeIMO.Markdown.TableFromOptions} configure) #

Populates the table from arbitrary data using an inline options configuration.

Parameters

data System.Object required
configure System.Action{OfficeIMO.Markdown.TableFromOptions} required
public TableBuilder FromObject<T>(T data, TableFromOptions options = null) #
Returns: TableBuilder

Type Parameters

T

Parameters

data T requiredposition: 0
options TableFromOptions = null optionalposition: 1
FromObject``1(``0 data, OfficeIMO.Markdown.TableFromOptions options) #

Populates the table from a single object using public readable properties.

Parameters

data ``0 required
options OfficeIMO.Markdown.TableFromOptions required
public TableBuilder FromSequence<T>(IEnumerable<T> items, params ValueTuple<String, Func<T, Object>>[] columns) #
Returns: TableBuilder

Type Parameters

T

Parameters

items IEnumerable<T> requiredposition: 0
columns ValueTuple<String, Func<T, Object>>[] requiredposition: 1
public TableBuilder FromSequenceAuto<T>(IEnumerable<T> items, TableFromOptions options = null) #
Returns: TableBuilder

Type Parameters

T

Parameters

items IEnumerable<T> requiredposition: 0
options TableFromOptions = null optionalposition: 1
FromSequenceAuto``1(System.Collections.Generic.IEnumerable{``0} items, OfficeIMO.Markdown.TableFromOptions options) #

Populates the table from a sequence of objects using public readable properties.

Parameters

items System.Collections.Generic.IEnumerable{``0} required
options OfficeIMO.Markdown.TableFromOptions required
FromSequence``1(System.Collections.Generic.IEnumerable{``0} items, System.ValueTuple{System.String,System.Func{``0,System.Object}}[] columns) #

Populates the table from a sequence using explicit column selectors.

Parameters

items System.Collections.Generic.IEnumerable{``0} required
columns System.ValueTuple{System.String,System.Func{``0,System.Object}}[] required
public TableBuilder Headers(params String[] headers) #
Returns: TableBuilder

Sets the header row.

Parameters

headers System.String[] requiredposition: 0
public TableBuilder Row(params String[] cells) #
Returns: TableBuilder

Adds a data row.

Parameters

cells System.String[] requiredposition: 0
Rows 3 overloads
public TableBuilder Rows(IEnumerable<KeyValuePair<String, String>> rows) #
Returns: TableBuilder

Adds multiple rows.

Parameters

rows System.Collections.Generic.IEnumerable{System.Collections.Generic.IReadOnlyList{System.String}} requiredposition: 0
Rows(System.Collections.Generic.IEnumerable{System.ValueTuple{System.String,System.String}} rows) #

Adds two-column rows from tuples.

Parameters

rows System.Collections.Generic.IEnumerable{System.ValueTuple{System.String,System.String}} required
Rows(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}} rows) #

Adds two-column rows from key/value pairs.

Parameters

rows System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}} required