C# 4.0 使用C#和Microsoft.Office.Interop.Word访问和填充Word 2007文档模板快速零件?
我在Word 2007中创建了一个文档模板文件(.dotx),并在其中创建了一个快速部件。我一直在尝试使用C#和Microsoft.Office.Interop.Word命名空间以编程方式访问此快速部件。一旦我访问了Quick Part,我想用POCO的属性填充它的字段,然后为列表中的所有POCO复制这个属性 到目前为止,我还没有成功。有人在这件事上运气好吗C# 4.0 使用C#和Microsoft.Office.Interop.Word访问和填充Word 2007文档模板快速零件?,c#-4.0,ms-word,C# 4.0,Ms Word,我在Word 2007中创建了一个文档模板文件(.dotx),并在其中创建了一个快速部件。我一直在尝试使用C#和Microsoft.Office.Interop.Word命名空间以编程方式访问此快速部件。一旦我访问了Quick Part,我想用POCO的属性填充它的字段,然后为列表中的所有POCO复制这个属性 到目前为止,我还没有成功。有人在这件事上运气好吗 注意:如果可能的话,我不想使用OpenXMLSDK。另一种方法是用POCO的内容填充自定义XML部件 数据将通过数据绑定内容控件显示在文档
注意:如果可能的话,我不想使用OpenXMLSDK。另一种方法是用POCO的内容填充自定义XML部件 数据将通过数据绑定内容控件显示在文档表面。数据绑定内容控件标识通过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应用程序,第二个参数是文档模板文件的路径,第三个参数是模板中快速部件的名称。感谢您提供的替代方法。非常感谢。