2011-01-14 142 views
-1

我如何從xml模板使用c#填充word文檔。我知道如何打開一個空白文檔,但我不知道如何填充它。從cml中填充word文檔從xml#

Word.Document wordDoc = wordApp.Documents.Add(ref objMissing, 
      ref objMissing, ref objMissing, ref objMissing); 
Word.Paragraph wordParagraph = wordDoc.Paragraphs.Add(ref objMissing); 

下面是我的XML表單的基本外觀。

<?xml version="1.0" encoding="utf-8"?> 
<Cover> 
    <CaseNo>Case No:</CaseNo> 
    <Title>Title:</Title> 
    <Date>Date:</Date> 
</Cover> 

我最終想要做的是讓用戶填寫一個c#程序中的文本框,它將填充word文檔。

的信息不是從SQL數據庫

+1

如何將段落添加到新的word文檔中:http://support.microsoft.com/kb/316384 – 2011-01-14 13:42:23

+0

@jackie我已經在MS Word文檔中使用XML和自定義控件解決了這個問題。如果這仍然是問題,請告訴我,我會發布回覆。 – 2015-12-03 20:01:36

回答

0

您需要將您的Word文檔中的某處識別信息去...

首先來了,你需要做出選擇在Word文檔中,然後使用該選擇,您可以簡單地使用TypeText方法來獲取數據。

我在這些情況下所做的工作,我覺得用戶感覺很舒服,就是在Word模板中定義一組佔位符(例如{caseno}或{title}),它們可以編輯。然後,您可以搜索佔位符,然後將其替換爲XML文件中的文本 - 查看Word.Selection.Find

1

您可以使用http://msdn.microsoft.com/en-us/library/bb448854.aspx生成docx文件。這很容易。

什麼你也可以使用Office 2007或2010的時候做的,就是:

  • 創建Microsoft Office中的Word文檔和DOCX到拉鍊重命名的Word文檔。
  • 打開它,你會發現幾個XML文件。找到包含實際文檔的xml。添加{0},{1}等佔位符,以便您可以使用string.Format將數據插入文檔中的正確位置。您的應用程序將數據輸入到佔位符中,然後將xml文件重新解壓縮爲docx文件。