在窗口中显示MS Word文档以进行编辑

时间:2018-11-09 05:09:51

标签: c# wpf ms-word

您好,我正在构建与Microsoft Office Word文档(.docx)通信的Windows C#WPF应用程序。该应用程序应使用用户输入来更新.docx模板文件,并且使用OpenXML成功完成了此步骤。该应用程序的另一部分是在应用程序窗口内或使用MS Word向用户显示已编辑的Word文档,并允许他添加一些更多信息。
我面临的问题是: 我应该在打开Word文档时禁用我的应用程序控件,并在关闭单词时启用它们,我也想知道是否保存了单词app(如果用户进行了更改)。
下一个代码是button单击事件以打开Word文档:

Enter rainfallJanuary :  40
Enter rainfallFebruary :  50
Enter rainfallMarch :  30
Enter rainfallApril :  60
Enter rainfallMay :  50
Enter rainfallJune :  30
Enter rainfallJuly :  330
Enter rainfallAugust :  20
Enter rainfallSeptember :  50
Enter rainfallOctober :  90
Enter rainfallNovember :  30
Enter rainfallDecember :  430
[40.0, 50.0, 30.0, 60.0, 50.0, 30.0, 330.0, 20.0, 50.0, 90.0, 30.0, 430.0]
average rainfall is: 100.83333333333333

运行代码时-我按预期看到打开的MS Word文档,但是当我关闭或保存它时-没有任何事件触发,我也不明白为什么。另外,我可以使用 System.Diagnostics.Process 启动Word并向其中添加退出事件,但是通过这种方式,我不知道用户是否应用了某些更改。所以,如果有人解决了这个问题,请帮助我。
感谢您的阅读和回答

1 个答案:

答案 0 :(得分:1)

您可以:

  • 获取文件的当前更改日期
  • 使用System.Diagnostics.Process启动Word。
  • 过程结束后,您再次检查更改日期
  • 如果用户保存了文件,则更改日期会更新

我不知道如果用户只是关闭文档而不是关闭单词,该过程是否仍在运行。为此,您可以观察到文档的文件夹,以便于〜...打开文档时Word创建的Temp Files ...