簡體   English   中英

如何在MS Project的右鍵菜單中添加菜單項?

[英]How to add menu item to right click menu in MS Project?

我正在Visual Studio開發用於MS Project的加載項,並且在right click menu需要自定義菜單項。 這將修改任務數據。 我正在使用以下代碼添加項目:

 private void AddMenuItem(String param)
    {
        Office.MsoControlType menuItem =
            Office.MsoControlType.msoControlButton;

        btn_editor =
            (Office.CommandBarButton)app.CommandBars[param].Controls.Add
            (menuItem, missing, missing, 1, true);

        btn_editor.Style = Office.MsoButtonStyle.msoButtonCaption;
        btn_editor.Caption = "My Menu Item";
        btn_editor.Tag = "MyMenuItem";

        btn_editor.Click +=
            new Microsoft.Office.Core._CommandBarButtonEvents_ClickEventHandler
                (editor_Click);

    }

對於String參數,我使用了所有ComandBar名稱:

 CommandBars commandBars = (CommandBars)app.CommandBars;
  foreach (CommandBar cbar in commandBars)
        {
                AddMenuItem(cbar.Name);
        }

它所做的就是在“加載項”選項卡的“功能區”中添加按鈕。 右鍵單擊菜單中未添加任何按鈕。 您知道在右鍵菜單中添加的另一種方法嗎?

MS Project中的上下文菜單查看此鏈接以查看是否有幫助

這是另一個處理上下文菜單以及Office Project添加上下文菜單的方法

此鏈接將說明如何在右鍵單擊鼠標時創建上下文菜單,而在用戶右鍵單擊鼠標時創建上下文菜單。

您將需要使用Ribbon XML API ,這是您的案例的示例

XML片段

<customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui">
   <contextMenus>
      <contextMenu idMso="ContextMenuText">
         <button id="MyMenuItem" label="My Menu Item" onAction="Button_Click" />
      </contextMenu>
   </contextMenus>
</customUI>

功能區代碼

public void Button_Click(Microsoft.Office.Core.IRibbonControl ctrl)
{
        switch (ctrl.Id)
        {
            case "MyMenuItem": System.Windows.Forms.MessageBox.Show("MyMenuItem"); break;
        }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM