Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
Ribbon im Application.ActiveInspector() ansprechen
morbus85
myCSharp.de - Member



Dabei seit:
Beiträge: 84

Themenstarter:

Ribbon im Application.ActiveInspector() ansprechen

beantworten | zitieren | melden

Hallo zusammen,

bin am verzweifeln. Wer kann mir verraten wie ich mein Ribbon im Application.ActiveInspector() ansprechen kann.
Ich habe Office 2007 und VS 2010 und programmiere in C#.

Ich weiß, dass Application.ActiveInspector() das aktive Fenster zurück gibt und im ihn komme ich etwas weiter durch CommandBars in der Klasse Inspector, aber da kann ich weder in meine Ribbon Klasse umwandeln, noch überhaupt in eine Ribbon Klasse.
private Nachricht | Beiträge des Benutzers
morbus85
myCSharp.de - Member



Dabei seit:
Beiträge: 84

Themenstarter:

beantworten | zitieren | melden

Also rein theoretisch muss das hier funktionieren, tut es aber nicht

ThisRibbonCollection ribbonCollection = 
                         Globals.Ribbons[Globals.ThisAddIn.Application.ActiveInspector()];
ribbonCollection.Ribbon1.comboBox1.Text = "Hello World";
private Nachricht | Beiträge des Benutzers
Abt
myCSharp.de - Team

Avatar #avatar-4119.png


Dabei seit:
Beiträge: 16234

beantworten | zitieren | melden

Willst Du ein Ribbon hinzufügen oder was willst Du genau tun?
- performance is a feature -

Microsoft MVP - @Website - @blog - @AzureStuttgart - github.com/BenjaminAbt
private Nachricht | Beiträge des Benutzers
morbus85
myCSharp.de - Member



Dabei seit:
Beiträge: 84

Themenstarter:

beantworten | zitieren | melden

Die Application übergen um z.B. in das Textfeld unten einträge einzufügen.

Aber ich glaube ich habe es gefaunden.... bin falsch angegangen. Ich hätte gleich von Anfang an über Gloabals.Ribbons gehen sollen.
private Nachricht | Beiträge des Benutzers
morbus85
myCSharp.de - Member



Dabei seit:
Beiträge: 84

Themenstarter:

beantworten | zitieren | melden

while (is_open)
{
  Thread.Sleep(100);
  if (Globals.Ribbons.Count != last_count)
 {
    if (Globals.Ribbons[Globals.Ribbons.Count-1].GetType() 
           == (new AddInRibbon()).GetType())
    {
         ((AddInRibbon)Globals.Ribbons[Globals.Ribbons.Count - 1]).Application 
                   = this.Application;
    }
 }                    
}

also, wer selber Probleme hatte, hier die Lösung... das Dumme ist nur, dass Outlook noch viel, sehr viel mit COM arbeitet..
private Nachricht | Beiträge des Benutzers