Condividi tramite


Procedura: creare un calendario personalizzato a livello di codice

In questo esempio viene creata una nuova cartella Calendario denominata PersonalCalendar, quindi viene creato un nuovo elemento appuntamento che viene aggiunto alla cartella Calendario.Il codice infine visualizza la cartella Calendario.

Si applica a: le informazioni fornite in questo argomento sono valide per i progetti a livello di applicazione per Outlook 2013 e Outlook 2010. Per ulteriori informazioni, vedere Funzionalità disponibili in base ai tipi di progetto e applicazioni di Office.

Esempio

Private Sub CreateCustomCalendar()
    Const newCalendarName As String = "PersonalCalendar"
    Dim primaryCalendar As Outlook.MAPIFolder = _
        Me.Application.ActiveExplorer().Session.GetDefaultFolder(Outlook _
        .OlDefaultFolders.olFolderCalendar)
    Dim needFolder As Boolean = True
    For Each personalCalendar As Outlook.MAPIFolder In _
        primaryCalendar.Folders()
        If personalCalendar.Name = newCalendarName Then
            needFolder = False
        End If
    Next
    If needFolder Then
        Dim personalCalendar As Outlook.MAPIFolder = _
            primaryCalendar.Folders.Add(newCalendarName)
        Dim newEvent As Outlook.AppointmentItem = _
            personalCalendar.Items.Add _
            (Outlook.OlItemType.olAppointmentItem)
        With newEvent
            .Start = Date.Now.AddHours(1)
            .End = Date.Now.AddHours(1.25)
            .Subject = "New plan"
            .Body = "Meet to discuss new plan."
            .Save()
        End With
    End If
    Me.Application.ActiveExplorer().SelectFolder(primaryCalendar _
        .Folders(newCalendarName))
    Me.Application.ActiveExplorer().CurrentFolder.Display()
End Sub
Private Sub CreateCustomCalendar()
    Const newCalendarName As String = "PersonalCalendar"
    Dim primaryCalendar As Outlook.MAPIFolder = _
        Me.Application.ActiveExplorer().Session.GetDefaultFolder(Outlook _
        .OlDefaultFolders.olFolderCalendar)
    Dim needFolder As Boolean = True
    For Each personalCalendar As Outlook.MAPIFolder In _
        primaryCalendar.Folders()
        If personalCalendar.Name = newCalendarName Then
            needFolder = False
        End If
    Next
    If needFolder Then
        Dim personalCalendar As Outlook.MAPIFolder = _
            primaryCalendar.Folders.Add(newCalendarName)
        Dim newEvent As Outlook.AppointmentItem = _
            personalCalendar.Items.Add _
            (Outlook.OlItemType.olAppointmentItem)
        With newEvent
            .Start = Date.Now.AddHours(1)
            .End = Date.Now.AddHours(1.25)
            .Subject = "New plan"
            .Body = "Meet to discuss new plan."
            .Save()
        End With
    End If
    Me.Application.ActiveExplorer().SelectFolder(primaryCalendar _
        .Folders(newCalendarName))
    Me.Application.ActiveExplorer().CurrentFolder.Display()
End Sub
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();
}
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();
}

Vedere anche

Attività

Procedura: creare appuntamenti a livello di codice

Procedura: creare una convocazione riunione a livello di codice

Concetti

Utilizzo degli elementi di calendario