다음을 통해 공유


방법: 현재 Outlook 항목 확인

이 예제에서는 Explorer.SelectionChange 이벤트를 사용하여 현재 폴더의 이름과 선택한 항목에 대한 일부 정보를 표시합니다. 그런 다음 선택한 항목을 표시합니다.

적용 대상: 이 항목의 정보는 Outlook 2007 및 Outlook 2010의 응용 프로그램 수준 프로젝트에 적용됩니다. 자세한 내용은 Office 응용 프로그램 및 프로젝트 형식에 따라 사용 가능한 기능을 참조하십시오.

예제

Dim WithEvents currentExplorer As Outlook.Explorer = Nothing

Private Sub ThisAddIn_Startup(ByVal sender As Object, _
     ByVal e As System.EventArgs) Handles Me.Startup
    currentExplorer = Me.Application.Explorers.Application.ActiveExplorer
    AddHandler currentExplorer.SelectionChange, AddressOf _
        currentExplorer_Event
End Sub

Public Sub currentExplorer_Event()
    Dim selectedFolder As Outlook.MAPIFolder = _
        Me.Application.ActiveExplorer().CurrentFolder
    Dim expMessage As String = "Your current folder is " _
        & selectedFolder.Name & "." & vbCrLf
    Dim itemMessage As String = "Item is unknown."
    Try
        If Me.Application.ActiveExplorer.Selection.Count > 0 Then
            Dim selObject As Object = Me.Application.ActiveExplorer _
                .Selection.Item(1)
            If (TypeOf selObject Is Outlook.MailItem) Then
                Dim mailItem As Outlook.MailItem = _
                    TryCast(selObject, Outlook.MailItem)
                itemMessage = "The item is an e-mail message." & _
                    " The subject is " & mailItem.Subject & "."
                mailItem.Display(False)
            ElseIf (TypeOf selObject Is Outlook.ContactItem) Then
                Dim contactItem As Outlook.ContactItem = _
                   TryCast(selObject, Outlook.ContactItem)
                itemMessage = "The item is a contact." & _
                    " The full name is " & _
                    contactItem.Subject & "."
                contactItem.Display(False)
            ElseIf (TypeOf selObject Is Outlook. _
                AppointmentItem) Then
                Dim apptItem As Outlook.AppointmentItem = _
                   TryCast(selObject, Outlook.AppointmentItem)
                itemMessage = "The item is an appointment." _
                    & apptItem.Subject & "."
            ElseIf (TypeOf selObject Is Outlook.TaskItem) Then
                Dim taskItem As Outlook.TaskItem = _
                    TryCast(selObject, Outlook.TaskItem)
                itemMessage = "The item is a task." & _
                    " The body is " & taskItem.Body & "."
            ElseIf (TypeOf selObject Is Outlook.MeetingItem) Then
                Dim meetingItem As Outlook.MeetingItem = _
                    TryCast(selObject, Outlook.MeetingItem)
                itemMessage = "The item is a meeting item. " & _
                    "The subject is " & meetingItem.Subject & "."
            End If
        End If
        expMessage = expMessage & itemMessage
    Catch ex As Exception
        expMessage = ex.Message
    End Try
    MsgBox(expMessage)
End Sub
        Outlook.Explorer currentExplorer = null;

        private void ThisAddIn_Startup
            (object sender, System.EventArgs e)
        {
            currentExplorer = this.Application.ActiveExplorer();
            currentExplorer.SelectionChange += new Outlook
                .ExplorerEvents_10_SelectionChangeEventHandler
                (CurrentExplorer_Event);
        }

        private void CurrentExplorer_Event()
        {
            Outlook.MAPIFolder selectedFolder =
                this.Application.ActiveExplorer().CurrentFolder;
            String expMessage = "Your current folder is "
                + selectedFolder.Name + ".\n";
            String itemMessage = "Item is unknown.";
            try
            {
                if (this.Application.ActiveExplorer().Selection.Count > 0)
                {
                    Object selObject = this.Application.ActiveExplorer().Selection[1];
                    if (selObject is Outlook.MailItem)
                    {
                        Outlook.MailItem mailItem =
                            (selObject as Outlook.MailItem);
                        itemMessage = "The item is an e-mail message." +
                            " The subject is " + mailItem.Subject + ".";
                        mailItem.Display(false);
                    }
                    else if (selObject is Outlook.ContactItem)
                    {
                        Outlook.ContactItem contactItem =
                            (selObject as Outlook.ContactItem);
                        itemMessage = "The item is a contact." +
                            " The full name is " + contactItem.Subject + ".";
                        contactItem.Display(false);
                    }
                    else if (selObject is Outlook.AppointmentItem)
                    {
                        Outlook.AppointmentItem apptItem =
                            (selObject as Outlook.AppointmentItem);
                        itemMessage = "The item is an appointment." +
                            " The subject is " + apptItem.Subject + ".";
                    }
                    else if (selObject is Outlook.TaskItem)
                    {
                        Outlook.TaskItem taskItem =
                            (selObject as Outlook.TaskItem);
                        itemMessage = "The item is a task. The body is "
                            + taskItem.Body + ".";
                    }
                    else if (selObject is Outlook.MeetingItem)
                    {
                        Outlook.MeetingItem meetingItem =
                            (selObject as Outlook.MeetingItem);
                        itemMessage = "The item is a meeting item. " +
                             "The subject is " + meetingItem.Subject + ".";
                    }
                }
                expMessage = expMessage + itemMessage;
            }
            catch (Exception ex)
            {
                expMessage = ex.Message;
            }
            MessageBox.Show(expMessage);
        }

코드 컴파일

이 예제에는 다음 사항이 필요합니다.

  • Microsoft Office Outlook의 약속, 연락처 및 전자 메일 항목

참고 항목

작업

방법: 이름으로 폴더 검색

방법: 특정 연락처 검색

기타 리소스

Outlook 개체 모델 개요