我想在C#中構建一個Outlook AddIn,該用戶在點擊日曆功能區中有一個按鈕以與其員工之一創建新會議。我們希望用戶(經理)能夠從他們自己的員工的已過濾列表中選擇員工,而不必搜索整個目錄。 這樣做的最好方法是什麼?用於過濾收件人的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;
}
最好的方法是谷歌。這不是一個「如何」網站。看看這個:https://stackoverflow.com/help/mcve。祝你好運。 – JuanR
當然,我已經嘗試過谷歌,這導致我在這裏..我閱讀幫助頁面。我搜索了以前的問題。我的問題符合「主題」標準(它是「一個特定的編程問題」和「一個對軟件開發來說唯一的實用,可回答的問題」)。我發現許多其他以「如何」或「我如何」開頭的問題,它們並不都是代碼錯誤消息。我的問題是一個富有建設性的問題,它將激發解釋「爲什麼」和「如何」的答案。' –
您需要展示至少一些工作。當你已經在做某些事情並且碰到牆壁時,這就是你想要的那種網站。 – JuanR