【问题标题】:VSTO Outlook: How to detect when any Outlook explorer or inspector window is being drag and then drop (left mouse down and left mouse up/released)VSTO Outlook:如何检测何时拖放任何 Outlook 资源管理器或检查器窗口(鼠标左键按下和鼠标左键向上/释放)
【发布时间】:2023-02-10 04:50:28
【问题描述】:

简而言之,在编写 VSTO Outlook 加载项时,有什么方法可以拖放任何 Outlook 资源管理器或检查器窗口吗?我需要处理鼠标左键按下和释放(向上)的时间。我想检测这些窗口上的拖放操作。

【问题讨论】:

    标签: .net outlook vsto outlook-addin office-addins


    【解决方案1】:

    没有简单的方法可以检测到这一点。您可以使用 Windows API 函数来子类化任何 Outlook 窗口并处理此类情况。如果控件几乎可以满足您的所有需求,但您还需要更多功能,则可以通过子类化原始控件来更改或添加功能。子类可以具有现有类的所有特性以及您想要赋予它的任何附加特性。您也可以考虑使用 SetWindowsHookEx 函数,它将应用程序定义的挂钩过程安装到挂钩链中。您将安装一个挂钩过程来监视系统的某些类型的事件。这些事件与特定线程或与调用线程在同一桌面中的所有线程相关联。

    在您的情况下,如果您需要检测何时将 Outlook 窗口拖到另一个具有不同 DPI 设置的监视器中,您可以考虑处理与 DPI 更改相关的事件。有关详细信息,请参阅Auto-Scale but still process WM_DPICHANGED

    【讨论】:

      猜你喜欢
      • 2017-09-30
      • 2022-11-02
      • 2011-04-26
      • 2010-10-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-09-27
      相关资源
      最近更新 更多