사용자가 클릭하여 직원 중 한 명과 함께 새 모임을 만들 때 클릭하는 일정 리본에 단추가있는 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;
}
가장 좋은 방법은 Google입니다. 이것은 "방법"사이트가 아닙니다. 이것 좀 봐 : https://stackoverflow.com/help/mcve. 행운을 빕니다. – JuanR
물론 나는 이미 구글을 시험해 보았습니다. 나는 여기로 나를 이끌었습니다. 나는 도움말 페이지를 읽었습니다. 이전 질문을 검색했습니다. 내 질문은 "주제에 관한"표준 ("특정 프로그래밍 문제"및 "소프트웨어 개발에 고유 한 실질적인 대답 가능한 문제")을 충족합니다. "How to"또는 "How I"로 시작하는 많은 다른 질문을 발견했으며 모든 코드 오류 메시지가 아닙니다. 내 질문은 '왜'와 '어떻게'를 설명하는 답을 유도하는 건설적인 질문이었습니다. ' –
적어도 일부 작품을 보여 주어야합니다. 이것은 당신이 이미 무언가를 작업하고 벽을 치고있을 때 당신이 방문하는 종류의 사이트입니다. – JuanR