Immer das ausgewählte Element aus dem dropdown in ein ribbon in Word 2007 mit makro
Sehe ich die folgende Frage, die erklärt, wie man das ausgewählte Element aus der dropdown -: -
http://social.msdn.microsoft.com/Forums/en-US/vsto/thread/d1cf7b3e-68cf-4b82-b806-a3431acde3b6/
Dem oben genannten thread berät eine hashtable-Elemente vorab-cache der ausgewählten id im onAction() auf die Dropdownliste, und verwenden Sie die ausgewählte id zu finden, das Element aus der hashtable-in der onAction() mit der Taste ein.
ABER, in meinem Fall, ich füllen Sie die Menüband-XML aus der Datenbank. Diese ribbon-XML-offensichtlich hat Sie den XML-Code für dropdown und ich bin mit Makros Interaktion mit dem dropdown Menü und andere Bedienelemente in der Multifunktionsleiste. Ich bin nicht sicher, wie Sie Sie haben eine Sammlung im Voraus, die verwendet werden können, der durch das makro ähnlich dem hier beschriebenen Ansatz in den oben genannten thread.
- Aber Sie füllen Ihre Band irgendwo ... Warum kann man nicht konstruieren Sie die Hashtabelle?
- Ich Auffüllen der ribbonXML aus der Datenbank, und fügen Sie dann, dass ribbonXML als ein Teil, um das word-Dokument mithilfe von C#. Ich kann nicht erstellen Sie die Makros, die dynamisch in die word-Datei, so bin ich das kopieren aus einem anderen docm-Datei. Auch Wenn ich konstruiere eine Hash-Tabelle in C# - code, Wie kann ich pass das gleiche mit dem makro, so dass Es könnte mit der gleichen? Macht das Sinn? Gibt es einen besseren Weg?
- Soooo.... warum können Sie nicht verwenden, die onAction-callback abrufen/speichern das ausgewählte Element? (Auch vorgeschlagen, in diesem thread, die Sie verlinkt wird.)
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich wollte die Lösung nur für den Fall jemand hat das gleiche problem:-
Dies ist, wie mein ribbon dropdown aussieht :-
Beachten Sie die Rückrufe für getItemLabel und onAction. Interessanterweise getItemLabel ist gedacht für die Einstellung der Artikel auf den dropdown (erhalten Sie per dropdown). Es ist ein bisschen verwirrend, aber das ist, wie es ist und das ist, warum ich nannte meine Methode als "SetTheSelectedItemInDropDown".
Funktion "GetTheSelectedItemInDropDown" für die onAction ist, um das ausgewählte Element.
Nun folgenden makro-code:-
Und das ist es, Sie sollten in der Lage sein, um die dropdown-jetzt.
Nächste Funktion Skript für Excel...
nach 2 Stunden testen und google-Suche, ich habe einen Weg gefunden, wie zu ändern und Wert.
1.) Sie müssen die Liste der Elemente (Sequenz), die Hexe in dropdowns.
2.) verwenden .onaaction und Anwendung.Anrufer features: (sorry für die Tschechische Sprache in das nächste Skript):