2015-08-15 41 views
1

我想用運行時數據源(對象實例)填充Word文檔模板。我閱讀了很多關於Word模式,XML,XSD等的知識,但一切仍然非常模糊,難以理解不同的術語。如何用數據源生成word文檔?

我跟着this但我不知道在哪裏得到一個單詞模式添加到word文檔或模式庫。

在Visual Studio 2010中,我還通過將數據源(對象)拖放到create the content controls來完成了文檔級項目的步驟,但我不知道該做什麼。我怎樣才能在運行時使用綁定對象數據的單詞文檔,並打開Word文檔的實例進行編輯/打印?

回答

1

值得慶幸的是,開源DOCX通過卡瑟爾科菲解決了這兩個問題 很好,而不像互操作,提出了一種易於使用的,高度 發現API針對Word文檔格式進行無數操縱/萃取 ( .docx格式,從 Word 2007開始引入)。最重要的是,DocX不要求Word或其他任何 Office依賴項安裝在客戶機上!完整的 源代碼可以從Coffey的Codeplex庫中獲得,或者您可以使用Nuget將DocX 添加到您的項目中。

來源:Writing to Word Doc

+0

好像它不處理的內容控件綁定? – Jake

0

內容控件支持只有custom xml part結合。

所以首先添加你的XML作爲customdml的一部分。

Office.CustomXMLPart employeeXMLPart = this.CustomXMLParts.Add(xmlData);//xmlData is xml string 

然後,內容控制與XPath的

string xPathName = "ns:employees/ns:employee/ns:name"; 
    this.plainTextContentControl1.XMLMapping.SetMapping(xPathName, 
     prefix, employeeXMLPart); 

Here is the reference article from MSDN