2011-01-10 9 views
0

Word 2007でドキュメントテンプレートファイル(.dotx)を作成しましたが、これでクイックパートが作成されました。私はC#とMicrosoft.Office.Interop.Word名前空間を使用してこのクイックパートにプログラムでアクセスしようとしています。クイックパートにアクセスすると、そのフィールドにPOCOのプロパティを設定し、リスト内のすべてのPOCOに対してこれを複製します。Word 2007文書テンプレートにアクセスしてデータを取り込むC#とMicrosoft.Office.Interop.Wordを使用したクイックパーツ?

これまでのところ、私は成功していません。誰にもこれで運があったのですか?

注:可能な限りOpen XML SDKを使用したくありません。

答えて

1

を参照してください。 3番目はドキュメントテンプレートファイルのクイックパートの名前です。

1

カスタムXMLパーツにPOCOの内容を入力する方法もあります。

データは、データバインドされたコンテンツコントロールを介してドキュメントの表面に表示されます。データバインドされたコンテンツコントロールは、バインドされているデータをXPath経由で識別します。

private BuildingBlock GetQuickPartFromTemplate(Microsoft.Office.Interop.Word.Application wordApplication, string wordTemplateDocumentPath, object quickPartName) 
    { 
     return (from Template template in wordApplication.Templates 
       where template.FullName.Contains(Path.GetFileNameWithoutExtension(wordTemplateDocumentpath)) 
       let index = quickPartName 
       select template.BuildingBlockEntries.Item(ref quickPartName)).FirstOrDefault(); 
    } 

最初のパラメータは、Wordアプリケーション、第二のパスである:

は、私は次のコードを使用してドキュメントテンプレートファイルからクイックパートにアクセスできることを発見し、一般的にhttp://msdn.microsoft.com/en-us/library/ff433638%28v=office.14%29.aspx

+0

代わりのアプローチをありがとう。それは感謝しています。 –

関連する問題