public static HtmlTag WriteBehaviorChainTable(IEnumerable<BehaviorChain> chains, params IColumn[] columns) { var table = new TableTag(); table.Attr("cellspacing", "0"); table.Attr("cellpadding", "0"); table.AddHeaderRow(row => { columns.Each(c => row.Header(c.Header())); }); chains.Each(chain => { table.AddBodyRow(row => { columns.Each(col => { col.WriteBody(chain, row, row.Cell()); }); }); }); return table; }