Outlook 2003 vsto 加载项分类对话框在新邮件窗口后面打开

发布于 2024-10-28 06:58:15 字数 355 浏览 6 评论 0原文


我已经为 Outlook 2003 创建了 C# 加载项。加载项在新邮件表单中创建命令栏。该命令栏包含一个可打开“分类”对话框的按钮。 要打开该对话框,我使用 MailItem 接口的 ShowCategoriesDialog 方法。

Microsoft.Office.Interop.Outlook.MailItem item = (MailItem)inspector.CurrentItem;
item.ShowCategoriesDialog();

它工作正常,但在几台机器上,分类窗口在新邮件窗口后面打开。

您知道如何修复它吗?

非常感谢,
安德烈·科扎楚克

I have created C# add-in for Outlook 2003. Add-in creates a command bar in new mail form. This command bar contains a button that opens a Categorize dialog.
To open the dialog I use ShowCategoriesDialog method of MailItem Interface.

Microsoft.Office.Interop.Outlook.MailItem item = (MailItem)inspector.CurrentItem;
item.ShowCategoriesDialog();

It works fine, but in several machines categorize window opens behind the new mail window.

Do you know how to fix it?

Thank you very much,
Andriy Kozachuk

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

寻找我们的幸福 2024-11-04 06:58:15

我可以立即想到两种方法。

1)尝试最小化和恢复您引用的检查器(Inspector.WindowState)的某种组合,可能是 min、restore、showcat 或 min/showcat/restore
这不是一个很好的解决方案,因为它会导致一些闪烁。
2) 如果您在导致显示检查器的事件中执行此操作,则可能没有让检查完全实现。在这种情况下,请使用计时器或后台线程延迟显示猫窗口一段时间(尽管这有点hackish)。
3) 使用Windows API EnumWindows 查找Categories 窗口,并使用SetWindowPos 将其带回到zorder 的顶部。 (可能是更好的解决方案)。

我在 Outlook 中多次遇到过此类问题,但不是这个具体例子。

Two ways I can think off offhand.

1)try some combination of minimizing and restoring the Inspector that you have a reference to (Inspector.WindowState), possibly min, restore, showcat, or min/showcat/restore
Not a great solution because it will cause some flashing.
2) if you're doing this from within an event that is causing the inspector to be shown, you may not have let the inspect get completely realized. In that case, use a timer or background thread to delay showing the cat window for a bit (this is a bit hackish though).
3) use the Windows API EnumWindows to find the Categories window, and use SetWindowPos to bring it back to the top of the zorder. (probably the better solution).

I've run into this very sort of problem with Outlook on many occasions, though not this specific instance of it.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文