【问题标题】:C#/VS2010 generate new document in Word 2007 at runtime from a template [closed]C#/VS2010 在运行时从模板在 Word 2007 中生成新文档 [关闭]
【发布时间】:2013-04-20 00:37:37
【问题描述】:

我正在尝试将以前创建的 Word 2007 功能区集(8 个选项卡,大约 150 个按钮和 10 个复选框)从 VS2005 中的 VB 转换为 VS2010 中的 C#。 我遇到的问题是我无法设置按钮的控件以使用启用了宏的模板打开新文档。我为每个模板都有一个确认的文件路径,并且我使用了 VB-C# 翻译器,但由于某种原因它不能正常工作。 到目前为止,这是我加载模板的方法:

   private void _LoadTemplate(string templateName)
    {
        string templatePath1 = "//Macro - Development";
        string templatePath2 = "//Macro - Development/Templates No Longer Updated";
        if(File.Exists(templatePath1 + templateName))
        {
            Document doc = Application.Documents.Add(Template = templatePath1 + templateName);
        }
        else if (File.Exists(templatePath2 + templateName))
        {
            Document doc = Application.Documents.Add(Template = templatePath2 + templateName);
        }
        else
        {
            MsgBox = "Template does not exist.";
        }

【问题讨论】:

    标签: c# visual-studio-2010 office-2007 word-2007


    【解决方案1】:

    有几个主要选项:

    • 使用办公自动化 COM 库 - 效果很好,但有几个条件:
      • 您需要为运行代码的计算机获得 Office(或至少为 Word)许可(如果尚未安装 Office)
      • 您不能在服务器端、无桌面环境中使用它(例如,在 ASP.NET 应用程序中)。这不是受支持的方案。
    • 使用 Aspose 等第三方库。
      • 问题是它非常昂贵。
    • 使用 Saaspose 等 SaaS 服务
      • 价格合理:每月 15 美元,但不如 Aspose 等本地图书馆灵活,并且需要可靠的互联网连接。
    • 直接使用 OOXML 库,但您说您不想直接涉足 XML。

    Office 2007 和 Office 2010 Word 文档文件基本相同,它们之间的编程模型和 API 更改也是如此 - 我认为唯一重要的区别是 Office 2010 的 UI 看起来比 2007 更好。

    【讨论】:

      猜你喜欢
      • 2010-09-10
      • 1970-01-01
      • 2016-03-24
      • 1970-01-01
      • 2010-11-01
      • 2010-11-17
      • 1970-01-01
      • 2011-06-15
      • 2010-12-01
      相关资源
      最近更新 更多