VSTO Outlook Addin对话框

时间:2015-05-07 21:02:18

标签: c# wpf vsto outlook-addin office-addins

我一直试图找出以类似于我的VSTO插件中的MessageBox.Show的方式弹出对话框的正确方法。我读过这可以用WPF来实现,但还有更好的方法吗?我发现了许多不同的例子,其中大多数是在VBA中,但我使用的是C#,因此我无法将它们翻译过来。如果有人可以提供一个在插件中弹出一个对话框的示例,以便从用户那里收集一些信息,并指向正确的文档以调整对话框的设置,这将有很大帮助。我似乎无法使用VBA示例在C#中使用它,对于文档,我无法找到与VSTO中的对话框有关的文档,就在WPF之外,我不确定是可以在这种情况下使用。

任何援助都是最有用的。我只是想显示一个对话框,并收集一些信息。我知道VSTO功能区组的对话框启动器,但这不是我需要的。

提前致谢。

1 个答案:

答案 0 :(得分:2)

您可以使用常规的System.Windows.Forms.Form实例来显示用于收集所需信息的对话窗口。使用ShowDialog方法将表单显示为具有指定所有者的模式对话框。不要忘记psecify父窗口句柄以防止Outlook中的任何更改。 IWin32Window接口提供了一个接口,用于向ShowDialog方法公开Win32 HWND句柄。

如果您需要显示WPF内容,可以使用ElementHost类。这是一个Windows窗体控件,可用于承载Windows Presentation Foundation(WPF)元素。