2017-10-17 28 views
-1

C#でOutlook AddInを作成し、カレンダーリボンにボタンがあり、ユーザーがクリックして従業員の1人と新しい会議を作成したいとします。ユーザー(マネージャー)は、従業員のみのフィルタリングされたリストから従業員を選択し、ディレクトリ全体を検索する必要がないようにします。 これを行う最善の方法は何ですか?受信者をフィルタリングするためのOutlook AddIn

補遺: 私はいくつかの検索を行なったし、私は、フィルタのための潜在的な方法に出くわしました。

私は「SelectNamesDialog」機能は私にアドレス帳]ダイアログボックスを取得することを知っている:

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

私は私が見つけたコードの一部とそれを組み合わせたいです。私はそれを変更して、マネージャのすべてのダイレクトレポート(マネージャの従業員)の名前を返すようにしました。

私は正しい軌道に乗っていると思いますが、次に何をすべきかは不明です。 GetSelectNamesDialogを使用してこれらの名前の1つをユーザーが選択できるようにするにはどうすればよいですか?あなたの答えが擬似コードであればOKです。

// 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

もちろん私はすでにGoogleを使っています。私はここで私を助けました。私はヘルプページを読んでいます。以前の質問を探しました。私の質問は「トピック上の」標準(「特定のプログラミング問題」と「ソフトウェア開発に固有の実用的で解決不可能な問題」)を満たしています。私は、「方法」や「方法」から始まる多くの他の質問を見つけました。それらはすべてコードエラーメッセージではありません。私の質問は、「理由」と「方法」を説明する回答を促す建設的な質問でした。「 –

+0

少なくともいくつかの仕事を示す必要があります。これはすでにあなたが何かに取り組んでいて、壁に当たったときに来る種類のサイトです。 – JuanR

答えて

0

アドレス帳を使用すると、一部のユーザーのサブセットにリストを制限できないので、あなたが事前にフィルタリングされたリストからの選択のためにユーザを促し、ウィンドウを所有を考え出す必要があると思います。

+0

ありがとうございます。私は今それを見る。私はちょうどそれを行うのトラックです。 –

関連する問題