【问题标题】:Creating a settings page for a VSTO custom ribbon add-in为 VSTO 自定义功能区加载项创建设置页面
【发布时间】:2019-11-18 12:17:51
【问题描述】:

我正在为 Outlook 2013/2016 制作一个自定义加载项,并决定使用自定义功能区按钮来实现它。我一直遵循这个指南,到目前为止效果很好:https://timdams.com/2017/05/09/how-to-create-a-simple-outlook-vsto-addin-a-step-by-step-guide/

插件只需编辑新会议请求或约会的“位置”字段并插入预定义的电话号码(用于电话会议等)。

我通过单击功能区中的自定义按钮使该部分工作,但插入的电话号码是硬编码的。我想让它可自定义并创建另一个按钮,该按钮会打开一个“设置页面”,用户可以在其中输入自己的电话号码,保存它,然后加载项将使用该号码。

我无法找到有关如何执行此操作的资源。如果有人能指出我正确的方向,那就太好了。

【问题讨论】:

    标签: outlook vsto ms-office outlook-addin visualdesigner


    【解决方案1】:

    您可以创建一个常规的 Winform。唯一的技巧是确保正确地将其作为正确的 Outlook InspectorExplorer 对象的父级 - 将适当的对象转换为 IOleWindow,然后调用 IOleWindow.GetWindow。拥有HWND 后,您可以将其与NativeWindow 对象一起使用并将其传递给Form.ShowDialog()

    【讨论】:

    • 对不起,我对 VSTO 开发很陌生,所以我不理解您使用的一些术语。我的项目中现在有一个 Winform(作为新项目添加),然后我使用工具箱添加了一个文本框和“保存”按钮。现在如何将它链接回功能区按钮?
    • 在事件处理程序中,创建表单类的新实例并使用 NativeWindow 将其作为正确 Outlook 窗口的父级。
    • 谢谢 我已经设法使用 Winform 编写了我想要的大部分功能。尽管我没有使用您建议的任何方法。我只是简单地使用showDialog(); 方法运行按钮单击以调出新表单。
    • 如果您没有正确设置表单的父级,可能会在对话框以模态方式显示时单击 Outlook 窗口。
    【解决方案2】:

    我建议为此目的创建一个相邻的 Outlook 表单区域。因此,用户可以轻松编辑新会议请求或约会的设置。请参阅Create Outlook form regions 了解更多信息。此外,您可能会发现 Walkthrough: Design an Outlook form region 文章很有帮助。

    【讨论】:

      猜你喜欢
      • 2019-04-13
      • 2018-08-29
      • 1970-01-01
      • 2022-07-30
      • 1970-01-01
      • 1970-01-01
      • 2021-02-23
      • 1970-01-01
      • 2019-04-10
      相关资源
      最近更新 更多