在C#中以编程方式将类别列添加到Outlook vsto加载项

时间:2018-06-19 12:14:02

标签: c# outlook vsto

我正在开发一个Outlook加载项,在其中将类别添加到邮件中。为了添加类别,我首先通过单击VIEW选项卡,然后单击Add Column然后单击类别,添加“类别”,然后按OK来添加类别。现在,我要以编程方式执行此操作。有可能吗?

1 个答案:

答案 0 :(得分:0)

是的。如果要对每个资源管理器窗口应用更改,则需要自定义资源管理器或文件夹的当前视图。要获取当前View视图的Explorer对象,请使用Explorer.CurrentView代替{{1返回的当前CurrentView对象的Folder属性}}。在继续将其用于任何目的之前,必须保存对Explorer.CurrentFolder返回的View对象的引用。

通过CurrentView对象,您可以创建可自定义的视图,从而可以更好地对所有不同类型的数据进行排序,分组和最终查看。有多种不同的视图类型可提供创建和维护重要数据所需的灵活性。

  • 表视图类型(View)使您可以查看基于字段的简单表中的数据。
  • 日历视图类型(olTableView)允许您以日历格式查看数据。
  • 卡视图类型(olCalendarView)使您可以查看一系列卡中的数据。每张卡都会显示该项目所包含的信息,并且可以对其进行排序。
  • 图标查看类型(olCardView)允许您以图标的形式查看数据,类似于Windows文件夹或资源管理器。
  • 时间轴视图类型(olIconView)使您可以查看在可自定义的线性时间轴中接收到的数据。

使用olTimelineView对象的XML属性定义和自定义视图。 View属性使您可以创建和设置自定义XML模式,该模式定义视图的各种功能。

XML定义通过使用与视图本身的各种属性相对应的一系列标记和关键字来描述视图类型。创建视图后,将解析XML定义以呈现新视图的设置。

要确定创建视图时XML的结构,可以使用Outlook用户界面创建视图,然后可以检索该视图的XML属性。

XML

要以编程方式向视图添加自定义字段,请使用Add对象的ViewFields方法。建议通过设置 Sub DisplayViewDef() 'Displays the XML definition of a View object Dim objName As Outlook.NameSpace Dim objViews As Outlook.Views Dim objView As Outlook.View Set objName = Application.GetNamespace("MAPI") Set objViews = objName.GetDefaultFolder(olFolderInbox).Views 'Return a view called Table View if it already exists, else create one Set objView = objViews.Item("Table View") If objView Is Nothing Then Set objView = objViews.Add("Table View", olTableView, olViewSaveOptionAllFoldersOfType) End If MsgBox objView.XML End Sub 对象的XML属性来动态更改视图的方法。