2012-03-28 6 views
2

Ich verwende den benutzerdefinierten UI-Editor für Office, der von Microsoft bereitgestellt wird, um benutzerdefinierte Multifunktionsleistenregister für Excel 2007 zu erstellen. Ich habe nicht gefunden, wie die Farbe geändert werden kann eine Schleife.Office 2007/2010 Benutzerdefinierte Multifunktionsleiste UI Ändern der TAB-Farbe XML TAG

Hier ein Beispiel:

<customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui"> 
<ribbon startFromScratch="false"> 
    <tabs> 
     <tab id="customTab" label="FUNCTION MENU"> 
      <group id="customGroup" label="LABEL"> 
       <button id="btnrefreshALL" label="BUTTONLABEL" imageMso="RefreshAll" size="large" onAction="AggiornaALLData" /> 
       <separator id="sep01" /> 
      </group> 
     </tab> 
    </tabs> 
</ribbon> 

ich ein XML-Tag wie COLOR platziert haben = "green" oder BACKCOLOR = "green" auf TAB Ebene, sondern Wiyh keine Ergebnisse.

Mit freundlichen Grüßen, Stefano

Antwort

3

Sieht nicht wie diese können unter Verwendung von Standard Microsoft Office vsto functionality.In dem Codebeispiel durchgeführt werden unter ich durch die benutzerdefinierte Registerkarten in meinem Band bin Looping und Schreiben der Eigenschaften der Ausgabefenster. Alternativ können Sie in der zweiten Foreach Schleife einen Bremspunkt platzieren und alle Eigenschaften im RibbonTab-Objekt durchlaufen. Soweit ich sehen kann keine von ihnen eine Eigenschaft, die Sie die Farbe der Registerkarte Farbband ändern können:

private void ThisAddIn_Startup(object sender, System.EventArgs e) 
{ 
    Ribbon1 ribbon = new Ribbon1(); 
    foreach (Microsoft.Office.Tools.Ribbon.RibbonTab tab in ribbon.Tabs) 
    { 
     //Writes to the Output Window(Press Ctrl+W+O to activate) 
     foreach(System.Reflection.PropertyInfo propertyInfo in tab.GetType().GetProperties()) 
     { 
      string info = String.Format("Property name - {0}, Property type - {1}", 
      propertyInfo.Name,propertyInfo.PropertyType); 
      System.Diagnostics.Debug.WriteLine(info); 
     } 
    } 
}