MigraDoc Два стола в одном ряду
Я работаю над созданием отчета с MigraDoc, который будет иметь 4 таблицы, 2 строки с 2 таблицами.
Я попробовал несколько различных методов для достижения этой цели.
1- Я попытался создать leftIndent на столе.
table1.Format.LeftIndent = 7;
- Я попытался создать leftIndent в строках таблицы.
tables.Rows.LeftIndent = 5;
- Я также попытался создать таблицу и вставить каждую таблицу в отдельную ячейку, но я не уверен, как разместить метод для создания таблицы в ячейке таблицы.
Любая помощь или вклад, который я могу получить по этому вопросу, будет высоко ценится. Спасибо!
2 ответа
После этого поста я смог добиться этого:
У меня было 4 таблицы, как это:
Table table = new Table();
table.Borders.Width = 0.75;
Column column = table.AddColumn(Unit.FromCentimeter(6));
column.Format.Alignment = ParagraphAlignment.Left;
Row row = table.AddRow();
Cell cell = row.Cells[0];
cell.AddParagraph("some value on first row");
row = table.AddRow();
cell = row.Cells[0];
cell.AddParagraph("another value on second row");
row = table.AddRow();
cell = row.Cells[0];
cell.AddParagraph("The value on third row");
Допустим, мы называем эти таблицы table, table2, table3 и table4.
Мы можем вставить таблицу в ячейку строки в MigraDoc следующим образом:
Document document = new Document();
Table TableContainer = new Table();
Column columnC = TableContainer.AddColumn(Unit.FromCentimeter(7));
TableContainer.AddColumn(Unit.FromCentimeter(7));
Row rowC = TableContainer.AddRow();
Cell cellC = rowC.Cells[0];
cellC.AddParagraph("First Column");
cellC = rowC.Cells[1];
cellC.AddParagraph("Second Column");
rowC = TableContainer.AddRow();
cellC = rowC.Cells[0];
cellC.Elements.Add(table);
cellC = rowC.Cells[1];
cellC.Elements.Add(table2);
rowC = TableContainer.AddRow();
cellC = rowC.Cells[0];
cellC.Elements.Add(table3);
cellC = rowC.Cells[1];
cellC.Elements.Add(table4);
document.LastSection.Add(TableContainer);
Я не вижу вопроса.;-)
По поводу 3: Существует один известный прием добавления таблиц в таблицы: добавление TextFrame в ячейку и добавление таблицы в TextFrame.
Ячейки не могут перейти на следующую страницу, поэтому внутренние таблицы должны быть достаточно маленькими, чтобы поместиться на одной странице.