私はラベルを生成するためにWordでOpenXML SDKを使用しています。基本ワードのdocには、テーブル、2行、2つのセルを持つ1つのページがあり、各セルは1つのラベルを表します。私の計画は、SQL結果セットのサイズに基づいて必要に応じてページを追加することでした。ページの追加は機能しますが、本文の表の数は変更されません。要素配列をリフレッシュする方法はありますか?私は、結果セットのサイズを取得し、必要なページ数を追加して閉じ、ドキュメントを再度開くことができると思いますが、私は単純なものが欠けていると思います。OpenXMLテーブルコピーOpenXmlUnknownElementを提供
報告された間違った問題申し訳ありませんが、文書はWordでは正しく表示されていますが、生産性ツールでは正しく表示されませんでした。私は最新の試みを示すためにコードを更新しました。 iTestは正しい数のテーブルを報告するようになりましたが、生産性ツールでは追加されたテーブルにはOpenXmlUnknownElementというフラグが立てられます。
for (int i = 0; i < pages; ++i)
{
Table table = new Table(doc.MainDocumentPart.Document.Body.Elements<Table>().First().CloneNode(true));
doc.MainDocumentPart.Document.Body.Append(table);
}
int iTest = doc.MainDocumentPart.Document.Body.Elements<Table>().Count();
XMLが生成され、余分な<w:tbl>
がありますを示しています。
<w:tbl xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main">
<w:tbl>
<w:tblPr>
<w:tblStyle w:val="TableGrid" />
だから、本当の問題は、OpenXMLのSDKを使用してテーブルをコピー&ペーストする方法、ありますか?