在OOM(Outlook Object Module)中UserDefinedProperties看起来非常奇怪,你可以定义它,却不能给它赋值。其实UserDefinedProperties是用来建立一个用户自定义项来显示其文件夹下Item中相应的自定义值的。下面是个用来说明的小例子。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml.Linq;
using Outlook = Microsoft.Office.Interop.Outlook;
using Office = Microsoft.Office.Core;
using System.Windows.Forms;
namespace OutlookAddIn1
{
public partial class ThisAddIn
{
private void ThisAddIn_Startup(object sender, System.EventArgs e)
{
Application.Session.GetDefaultFolder(
Outlook.OlDefaultFolders.olFolderTasks).UserDefinedProperties
.Add("Type", Outlook.OlUserPropertyType.olText);
Outlook.TaskItem ti = Application.CreateItem(Outlook.OlItemType
.olTaskItem);
ti.UserProperties.Add("Type",Outlook.OlUserPropertyType.olText)
.Value = "Just a Test";
ti.Save();
Application.ActiveExplorer().ViewSwitch += new Outlook
.ExplorerEvents_10_ViewSwitchEventHandler(ThisAddIn_ViewSwitch);
}
void ThisAddIn_ViewSwitch()
{
Outlook.Explorer explorer = Application.ActiveExplorer();
Outlook.View view = explorer.CurrentView;
MessageBox.Show(view.Name);
}
private void ThisAddIn_Shutdown(object sender, System.EventArgs e)
{
}
#region VSTO generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InternalStartup()
{
this.Startup += new System.EventHandler(ThisAddIn_Startup);
this.Shutdown += new System.EventHandler(ThisAddIn_Shutdown);
}
#endregion
}
}
然后点任务Ribbon上的“视图”->“视图设置”
在对话框中点击“列”
在组合框中选中“文件夹中用户自定义的字段”
点击“添加(A) ->”
就能得到如图所示效果
然后点任务Ribbon上的“视图”->“视图设置”
在对话框中点击“列”
在组合框中选中“文件夹中用户自定义的字段”
点击“添加(A) ->”
就能得到如图所示效果
然后点任务Ribbon上的“视图”->“视图设置”
在对话框中点击“列”
在组合框中选中“文件夹中用户自定义的字段”
点击“添加(A) ->”
就能得到如图所示效果
欢迎访问《 许阳的红泥屋》