2017-10-17 9 views
-1

사용자가 클릭하여 직원 중 한 명과 함께 새 모임을 만들 때 클릭하는 일정 리본에 단추가있는 Outlook AddIn을 C#으로 작성하려고합니다. 우리는 사용자 (관리자)가 자신의 직원 만 필터링 한 목록에서 직원을 선택하고 전체 디렉토리를 검색하지 않아도되기를 바랍니다. 이 작업을 수행하는 가장 좋은 방법은 무엇입니까?받는 사람 필터링을위한 Outlook AddIn

부록 : 나는 몇 가지 검색을 수행했으며 필터에 대한 잠재적 인 방법을 발견했습니다.

는 내가 "SelectNamesDialog"기능이 나에게 주소록 대화 상자가 나타납니다 것을 알고 :

Outlook.SelectNamesDialog snd = Application.Session.GetSelectNamesDialog(); 

나는 내가 찾은 코드의 조각으로 그것을 결합하려는. 필자는 모든 관리자의 직속보고 (관리자 아래의 직원)의 이름을 반환하도록 수정했습니다.

나는 올바른 길을 가고 있다고 생각하지만 다음에해야 할 일에 대해 확신이 서지 않습니다. 어떻게하면 사용자가 GetSelectNamesDialog를 통해이 이름 중 하나를 선택할 수 있습니까? 대답이 psuedocode이면 괜찮습니다.

// source: "How to: Get Information About Direct Reports of the Current User's Manager" 
// https://msdn.microsoft.com/en-us/library/ff184617.aspx 
     private List<string> GetManagerDirectReports() 
     { 
      List<string> AddressNames = new List<string>(); 

      Outlook.AddressEntry currentUser = Globals.ThisAddIn.Application.Session.CurrentUser.AddressEntry; 
      if (currentUser.Type == "EX") 
      { 
       Outlook.ExchangeUser manager = currentUser.GetExchangeUser().GetExchangeUserManager(); 
       if (manager != null) 
       { 
        Outlook.AddressEntries addrEntries = manager.GetDirectReports(); 
        if (addrEntries != null) 
        { 
         foreach (Outlook.AddressEntry addrEntry in addrEntries) 
         { 
          //System.Windows.Forms.MessageBox.Show(addrEntry.Name); 
          AddressNames.Add(addrEntry.Name); 
         } 
        } 
       } 
      } 
      return AddressNames; 
     } 
+2

가장 좋은 방법은 Google입니다. 이것은 "방법"사이트가 아닙니다. 이것 좀 봐 : https://stackoverflow.com/help/mcve. 행운을 빕니다. – JuanR

+0

물론 나는 이미 구글을 시험해 보았습니다. 나는 여기로 나를 이끌었습니다. 나는 도움말 페이지를 읽었습니다. 이전 질문을 검색했습니다. 내 질문은 "주제에 관한"표준 ("특정 프로그래밍 문제"및 "소프트웨어 개발에 고유 한 실질적인 대답 가능한 문제")을 충족합니다. "How to"또는 "How I"로 시작하는 많은 다른 질문을 발견했으며 모든 코드 오류 메시지가 아닙니다. 내 질문은 '왜'와 '어떻게'를 설명하는 답을 유도하는 건설적인 질문이었습니다. ' –

+0

적어도 일부 작품을 보여 주어야합니다. 이것은 당신이 이미 무언가를 작업하고 벽을 치고있을 때 당신이 방문하는 종류의 사이트입니다. – JuanR

답변

0

주소록은 일부 사용자의 하위 집합에 대한 목록을 제한하지 않습니다, 그래서 당신은 당신이 미리 필터링 된 목록에서 선택하라는 메시지를 표시 창을 소유 마련 할 필요가 것입니다.

+0

감사합니다. 나는 그것을 지금 본다. 나는 그 일을하는 길에있다. –