【问题标题】:Expand/collapse folders in the Outlook navigation pane programmatically以编程方式展开/折叠 Outlook 导航窗格中的文件夹
【发布时间】:2011-01-12 17:17:35
【问题描述】:

我正在使用 C# 为 Outlook 编写加载项。有没有办法以编程方式展开和折叠 Outlook 2007 文件夹导航窗格中的文件夹?另外,展开文件夹时是否会触发事件?

【问题讨论】:

  • 您是在谈论在 Outlook 中使用 VBA 吗?或编写与 Outlook 通信的应用程序或 Outlook 插件?请在您的问题中更详细一点。

标签: c# outlook vsto outlook-2007 outlook-2007-addin


【解决方案1】:

Outlook 不会公开允许您在树视图中展开或折叠文件夹的事件。您或许可以使用 Windows API 来执行此操作。

【讨论】:

  • 虽然可以设置资源管理器的当前文件夹
【解决方案2】:

可能有一种方法可以扩展(但不能折叠)。

基本上,您需要做的是在每个步骤中逐个浏览子文件夹,使子文件夹成为当前文件夹。

我在 Outlook 2010 (VSTO) 中在插件启动时对此进行了测试。因此,如果您有父文件夹文件夹 A 及其子文件夹文件夹 A1、文件夹 A2 和文件夹 A3。

为了展开文件夹 A,请执行以下操作:

  1. 获取活动资源管理器 (Globals.thisaddin.application.activeexplorer)
  2. 设置当前文件夹 explorer.currentfolder = Folder A
  3. 现在遍历文件夹 A 下的所有子文件夹,并将每个子文件夹设为当前文件夹:
    (代码应该是这样的)

    子文件夹 = FolderA.Folders
    对于每个文件夹作为 Outlook .folder 中的子文件夹
    Explorer.currentfolder = 文件夹
    下一个文件夹

这个方法对我有用,所以希望这是有希望的

【讨论】:

    猜你喜欢
    • 2012-07-01
    • 2020-08-25
    • 1970-01-01
    • 2015-08-19
    • 2017-05-07
    • 2011-07-06
    • 2014-12-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多