public override void print(IDocumentGenerator dg, int sectionLevel) { dg.BeginTable(RowCount, ColCount); try { int rowIndex = 0; foreach (var tr in Rows) { dg.BeginTableRow(rowIndex); try { int colIndex = 0; foreach (var tc in tr.Cells) { dg.BeginTableCell(rowIndex, colIndex, tc.IsHeader); try { foreach (var p in tc.Paragraphs) { p.print(dg, sectionLevel); } } catch (Exception e) { Console.WriteLine(e.Message); } finally { dg.EndTableCell(rowIndex, colIndex, tc.IsHeader); } ++colIndex; } } catch { Console.WriteLine("Error while make table"); } finally { dg.EndTableRow(rowIndex); ++rowIndex; } } } finally { dg.EndTable(); } }