Nasıl yapılır: Kısayol menülerine komut ekleme

bu konu başlığı altında, bir VSTO eklentisi kullanarak bir Office uygulamasındaki kısayol menüsüne nasıl komut ekleyeceğiniz gösterilmektedir.

Uygulama hedefi: Bu konudaki bilgiler belge - düzeyi projelerine ve VSTO eklentisi - projelerine yöneliktir. Bkz. Office uygulaması ve proje türü tarafından kullanılabilen özellikler.

Office içindeki Kısayol menülerine komut eklemek için

  1. belge düzeyi veya VSTO eklentisi projesine şerit XML öğesi ekleyin. Daha fazla bilgi için bkz. nasıl yapılır: Şeriti özelleştirmeye başlama. İçinde

  2. Çözüm Gezgini, ThisAddIn. cs veya ThisAddIn. vb öğesini seçin.

  3. Menü çubuğunda kodu görüntüle' yi seçin > .

    ThisAddIn sınıfı dosyası kod düzenleyicisinde açılır.

  4. Aşağıdaki kodu ThisAddIn sınıfına ekleyin. bu kod, yöntemini geçersiz kılar CreateRibbonExtensibilityObject ve şerit XML sınıfını Office uygulamasına döndürür.

    protected override Microsoft.Office.Core.IRibbonExtensibility CreateRibbonExtensibilityObject()
    {
          return new Ribbon1();
    }
    
    Protected Overrides Function CreateRibbonExtensibilityObject() As Microsoft.Office.Core.IRibbonExtensibility
        Return New Ribbon1()
    End Function
    
  5. Çözüm Gezgini, Şerit XML dosyasını seçin. Varsayılan olarak, Şerit XML dosyası Ribbon1.xml olarak adlandırılır.

  6. Menü çubuğunda kodu görüntüle' yi seçin > .

    Şerit XML dosyası kod düzenleyicisinde açılır.

  7. Kod Düzenleyicisi 'nde, kısayol menüsünü ve kısayol menüsüne eklemek istediğiniz denetimi tanımlayan XML ekleyin.

    Aşağıdaki örnek bir Word belgesi için kısayol menüsüne bir düğme, menü ve bir galeri denetimi ekler. Bu kısayol menüsünün denetim KIMLIĞI ContextMenuText ' dir. Office 2010 kısayol control ıd 'nin tüm listesi için bkz. Office 2010 yardım dosyaları: Office akıcı kullanıcı arabirimi denetim tanımlayıcıları.

    <?xml version="1.0" encoding="UTF-8"?>
    <customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui">
      <contextMenus>
        <contextMenu idMso="ContextMenuText">
          <button id="MyButton" label="My Button" insertBeforeMso="HyperlinkInsert" onAction="GetButtonID" />
          <menu id="MySubMenu" label="My Submenu" >
            <button id="MyButton2" label="Button on submenu" />
          </menu>
          <gallery id="galleryOne" label="My Gallery">
            <item id="item1" imageMso="HappyFace" />
            <item id="item2" imageMso="HappyFace" />
            <item id="item3" imageMso="HappyFace" />
            <item id="item4" imageMso="HappyFace" />
          </gallery>
        </contextMenu>
      </contextMenus>
    </customUI>
    
  8. Çözüm Gezgini, MyRibbon. cs veya MyRibbon. vb öğesini seçin.

  9. Ribbon1İşlemek istediğiniz her denetim için sınıfa bir geri çağırma yöntemi ekleyin.

    Aşağıdaki geri çağırma yöntemi düğme düğmesini işler. Bu kod, etkin belgeye curser 'ın geçerli konumundaki bir dize ekler.

    Public Sub GetButtonID(ByVal control As Office.IRibbonControl)
        Dim currentRange As Word.Range = Globals.ThisAddIn.Application.Selection.Range
        currentRange.Text = "This text was added by the context menu named My Button."
    End Sub
    
    public void GetButtonID(Office.IRibbonControl control)
    {
        Microsoft.Office.Interop.Word.Range currentRange = Globals.ThisAddIn.Application.Selection.Range;
        currentRange.Text = "This text was added by the context menu named My Button.";
    }
    

Ayrıca bkz.