Ajout d'une entrée de menu dans la liste des menu de Outlook
Bonsoir,
J'aimerais pouvoir ajout un menu dans la liste des menu de Outlook.
C'est-à-dire pouvoir ajouter un nouveau menu perso à la suite des menu Fichier, Edidition, Affichage, etc de outlook.
Je développe un Addin.
Merci de me donner un coup de main.
Solution trouvé! -> code sourec
J'ai trouvé la solution à ce problème alors je partage mon code pour ceux que ca pourrait intéressé:
Dans la méthode OnStartupComplete(...) de la class Connect.cs
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
|
//Variables
// Collection des commandbars de l'application hôte
private CommandBars oCommandBars;
// Notre barre d'outils
private CommandBar oEwayComBar;
// Notre Menu
private CommandBar oMenuBar;
private CommandBarPopup oEwayComMenu;
private const string _MENU_BEFORE = "Actions";
private object oMenuAideIndex;
///
public void OnStartupComplete(ref System.Array custom)
{
object oActiveExplorer;
object omissing = System.Reflection.Missing.Value;
// obtenir l'explorer courant
oActiveExplorer = applicationObject.GetType().InvokeMember("ActiveExplorer",
BindingFlags.GetProperty,
null,
applicationObject,
null);
#region Création de notre Menu EwayCom-Addins et notre ToolBar EwayCom-Bar
// obtenir la collection de barre d'outils
oCommandBars = (CommandBars)oActiveExplorer.GetType().InvokeMember("CommandBars",
BindingFlags.GetProperty,
null,
oActiveExplorer,
null);
try
{
//Bar de menu de Outlook
oMenuBar = (CommandBar)oCommandBars.ActiveMenuBar;
// Index du menu d'aide de Outlook
oMenuAideIndex = (int)oMenuBar.Controls[_MENU_BEFORE].Index;
// Ajouter un menu juste avant le menu d'aide "?"
oEwayComMenu = (CommandBarPopup)oMenuBar.Controls.Add(MsoControlType.msoControlPopup,
Type.Missing,
Type.Missing,
oMenuAideIndex,
true);
//Titre du nouveau menu
oEwayComMenu.Caption = "Nouveau Menu";
//rendre visible
oEwayComMenu.Visible = true;
}
catch (Exception e)
{
}
...
} |