以编程方式创建自定义日历
本示例创建名为 PersonalCalendar 的新日历文件夹,然后创建一个新的约会项并将其添加到日历文件夹中。 然后,该代码将显示“日历”文件夹。
适用于: 本主题中的信息适用于 Outlook 的 VSTO 外接程序项目。 有关详细信息,请参阅办公室应用程序和项目类型提供的功能。
示例
private void CreateCustomCalendar()
{
const string newCalendarName = "PersonalCalendar";
Outlook.MAPIFolder primaryCalendar = (Outlook.MAPIFolder)
this.Application.ActiveExplorer().Session.GetDefaultFolder
(Outlook.OlDefaultFolders.olFolderCalendar);
bool needFolder = true;
foreach (Outlook.MAPIFolder personalCalendar
in primaryCalendar.Folders)
{
if (personalCalendar.Name == newCalendarName)
{
needFolder = false;
break;
}
}
if (needFolder)
{
Outlook.MAPIFolder personalCalendar = primaryCalendar
.Folders.Add(newCalendarName,
Outlook.OlDefaultFolders.olFolderCalendar);
Outlook.AppointmentItem newEvent =
personalCalendar.Items.Add
(Outlook.OlItemType.olAppointmentItem)
as Outlook.AppointmentItem;
newEvent.Start = DateTime.Now.AddHours(1);
newEvent.End = DateTime.Now.AddHours(1.25);
newEvent.Subject = "New plan";
newEvent.Body = " Meet to discuss new plan.";
newEvent.Save();
}
Application.ActiveExplorer().SelectFolder(primaryCalendar
.Folders[newCalendarName]);
Application.ActiveExplorer().CurrentFolder.Display();
}