2016-04-25 5 views
0

私はMigraDocでテーブルを構築しています。私はの助けを借りてTable.Row.CellTableを入れる方法を見つけました。残念ながら、に新しいエントリを追加すると、Row.Cellは成長しません。だから、ある点では、内側のテーブルは下の行に重なっている。ここで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は、セルがネストされた表と一緒に拡大縮小されないため、テーブルの表をネストするのに不適切な方法であるかもしれないというトピックを扱っています。

+0

[MigraDoc - 重畳/ネストされたテーブルの可能な重複?](0120-325-954) –

+0

私の問題自体はありますが、リンクのそれとは少し異なります。しかし、リンクからの解決/ハックが助けになりました。私の答えを見てください。ありがとう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); 

最後のステップは、表のセルは、ネストした表がもたらすことを、拡張 に成長してきた効果があります! 下に余分な行をマージする必要はありませんでした。 このアプローチは、私の質問で を試したので、TextFrameを使用するよりも柔軟性があるようです。

関連する問題