首先看一段代碼,這段代碼意圖從docSource中擷取第一個表格,并插入docTarget的末尾:
這段代碼會抛出異常:“The newChild was created from a different document than the one that created this node.”,這是什麼原因呢?
原因是,對于Aspose.Words的Node對象,它的一系列樣式和格式的控制,取決于它所在的DocumentBase父對象,這也是很多Aspose.Words對象聲明時,必須指定它的DocumentBase參數,比如聲明一個Table,應該如下:
那麼,我們有沒有辦法添加另一個文檔中的對象呢?有,必須通過Document.ImportNode方法或者使用NodeImporter對象。
這兩種方法思路都是将源文檔中的Node導入到目标文檔中,再追加Node到合适的位置。
Document.ImportNode
NodeImporter
參考文檔:
http://www.aspose.com/docs/display/wordsnet/Aspose.Words.DocumentBase.ImportNode+Overload_1