XML-Multifunktionsleiste in Outlook - die es anscheinend auf ein bestimmtes Fenster

Ich mache meine ersten Versuch zur Erstellung einer Multifunktionsleisten in Outlook mit XML und habe Probleme Ortung genau, wie zu sagen, mein add-in, ich möchte nur, dass der Band erscheinen auf windows Explorer.

Rat?

Dank.

meine Ribbon1.XML Datei:

    <?xml version="1.0" encoding="UTF-8"?>
<customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui" onLoad="Ribbon_Load">
  <ribbon>
    <tabs>
      <tab idMso="TabAddIns">
        <group id="MyGroup"
               label="My Group">
          <button idMso="Delete"/>
        </group>
      </tab>
      <tab idMso="TabMail">
        <group idMso="GroupMoveActions"
               visible="false">
        </group>
      </tab>
    </tabs>
  </ribbon>
</customUI>

Den magischen error-Feld, das erscheint, sagt:

CustomUI Runtime Error in testingOLaddin2

Error found in CustomUI XML of "testingOLaddin2"

Line: 3
Column: 10
Error Code 0x80004005
Failed to find Office control by ID
ID: TabMail

Pro Antrag, meine Band generation-code:

using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Reflection;
using System.Runtime.InteropServices;
using System.Text;
using Office = Microsoft.Office.Core;

using System.Diagnostics;

namespace testingOLaddin2
{
    [ComVisible(true)]
    public class Ribbon1 : Office.IRibbonExtensibility
    {
        private Office.IRibbonUI ribbon;

        public Ribbon1()
        {
        }

        #region IRibbonExtensibility Members

        public string GetCustomUI(string ribbonID)
        {
            return GetResourceText("testingOLaddin2.Ribbon1.xml");
        }

        #endregion

        #region Ribbon Callbacks
        //Create callback methods here. For more information about adding callback methods, select the Ribbon XML item in Solution Explorer and then press F1

        public void Ribbon_Load(Office.IRibbonUI ribbonUI)
        {
            this.ribbon = ribbonUI;
        }


        #endregion

        #region Helpers

        private static string GetResourceText(string resourceName)
        {
            Assembly asm = Assembly.GetExecutingAssembly();
            string[] resourceNames = asm.GetManifestResourceNames();
            for (int i = 0; i < resourceNames.Length; ++i)
            {
                if (string.Compare(resourceName, resourceNames[i], StringComparison.OrdinalIgnoreCase) == 0)
                {
                    using (StreamReader resourceReader = new StreamReader(asm.GetManifestResourceStream(resourceNames[i])))
                    {
                        if (resourceReader != null)
                        {
                            return resourceReader.ReadToEnd();
                        }
                    }
                }
            }
            return null;
        }

        #endregion
    }
}
  • Wer weiß, wie man dieses Problem lösen die gleichen Fehler, wenn Sie ein add-in gebaut, mit dem Designer, statt XML?
Schreibe einen Kommentar