2016-04-25 2 views
0

Я строю стол в MigraDoc. Я нашел способ поставить Table в Table.Row.Cell с помощью TextFrame. К сожалению, Row.Cell не увеличивается при добавлении новых записей в TextFrame. Поэтому в определенный момент внутренний стол накладывается на строки внизу.MigraDoc: Как увеличить высоту строки при добавлении текста?

Вот мой код:

this.Table = this.MigraDokument.AddSection().addTable(); 
Row row = this.Table.AddRow(); 
TextFrame Frame = row.Cells[0].AddTextFrame(); 

Table k_table = Frame.AddTable(); 
// adding rows with 
// Row row2 = k_table.AddRow(); 

Как я могу сказать Row.Cell расти с каждой записью, которые я положил во внутреннюю таблицу?

Редактировать: Моя проблема не в том, что я не мог добавить вложенную таблицу, как в [MigraDoc - imbricated/nested tables?. Хотя ответ по ссылке мне помог. Этот вопрос касается темы, что TextFrames может быть неприемлемым способом для вложения таблиц в таблицы, поскольку Cell не масштабируется с помощью вложенной таблицы.

+0

Возможный дубликат [MigraDoc - вложенные/вложенные таблицы?] (Http://stackoverflow.com/questions/36303719/migradoc-imbricated-nested-tables) –

+0

Это возможный дубликат в какой-то мере, хотя сама проблема немного отличается от такового в Link. Но решение/взлом из Link помогло. См. Мой ответ. Спасибо. Команда PDFsharp –

+0

Не тот же вопрос, но та же проблема - и одно и то же решение работает для обоих вопросов. Нужны ли они нам, если они немного отличаются друг от друга? –

ответ

0

Недопустимая функция из [MigraDoc - imbricated/nested tables? была ответом: Теперь код выглядит так, и он отлично работает.

this.Table = this.MigraDokument.AddSection().addTable(); 
Row row = this.Table.AddRow(); 
// Here I grab the cell that I want to populate later 
Cell dataCell = row.Cells[0]; 

// Than I build the table with alle the necessary Information in it 
Table k_table = new Table(); 
// adding columns and rows with 
k_table.AddColumn(); 
k_table.AddColumn(); 
Row row = k_table.AddRow(); 
// and populate with data 
row.Cells[0].AddParagraph("Stuff 1"); 
row.Cells[1].AddParagraph("Stuff 2"); 

// The final trick is to add it in the end to the `Elements` 
// property of the cell 
dataCell.Elements.add(k_table); 

Последний шаг к тому, что таблица-Cell выросший в расширить, что вложенная таблица дает! Не нужно было сливаться с дополнительными рядами. Этот подход кажется более гибким, чем использование TextFrame, поскольку я пробовал в моем вопросе.

Смежные вопросы