Seite 1 von 1

Add-In Aktivierungs-Event

Verfasst: 30. Mär 2009, 19:31
von Pitti
Hi zusammen,

weiß jemand, ob es ein Event oder Methode gibt, wo man merkt, dass ein Add-In-Tab geklickt wurde? Oder anders gefragt, kann ein Addin selber merken, dass es aktiviert wurde?

Danke & Ciao
Pitti

Re: Add-In Aktivierungs-Event

Verfasst: 2. Apr 2009, 11:56
von Pitti
Hallo nochmal,

vielleicht habe ich mich ja zu kompliziert ausgedrückt und deshalb noch einmal meine Frage:

Bekommt ein Add-In eine Info/Nachricht wenn ein Benutzer oben in der Consolen-Toolbar auf den Add-In-Reiter drückt?

Wäre toll wenn sich da jemand melden würde - auch um nur Feedback zu bekommen ob die Frage verständlich ist!

Danke & CIao
Pitti

Re: Add-In Aktivierungs-Event

Verfasst: 3. Apr 2009, 18:13
von Martin
Ich glaube du kannst nur den normalen Windowsevent auswerten, dass ein Fenster aktiv wird.

Gruß
Martin

Re: Add-In Aktivierungs-Event

Verfasst: 5. Apr 2009, 09:42
von Pseudocode
Hallo !

Ich würde hier auch das activated Event nutzen !

Gruß

Re: Add-In Aktivierungs-Event

Verfasst: 19. Apr 2009, 11:37
von AliG
Hi!

Der Vollständigkeit halber: die WHS-API definiert im Interface ITabExtender eine Funktion Prepare(), diese wird aufgerufen, wenn das Add-In durch Klick auf den entsprechenden Button in der Konsole aktiviert wird.

Nähere Infos: http://ihatelinux.blogspot.com/2008/01/ ... 2-tab.html

lg Alex

Re: Add-In Aktivierungs-Event

Verfasst: 20. Apr 2009, 15:08
von Martin
Leider wird nur einmal Prepare() für Settings aufgerufen, Refresh() gar nicht und für normale Tabs auch nicht.

Also auch nicht wirklich verwendbar.

Gruß
Martin

Re: Add-In Aktivierungs-Event

Verfasst: 20. Apr 2009, 20:52
von AliG
Hi!

Kann ich so nicht bestätigen, hab mir das Beispielprojekt runtergeladen (von hier: http://ihatelinux.blogspot.com/2008/01/ ... 4-tab.html), hier wird Prepare() jedes Mal beim aktivieren eines Tabs aufgerufen und Refresh() sobald man F5 drückt. Mein WHS hat natürlich PP1 und alle anderen Updates.

lg Alex

Re: Add-In Aktivierungs-Event

Verfasst: 21. Apr 2009, 08:37
von Martin
Ah, danke, muss ich mir nochmals ansehen, ist ja schon etwas länger her mit dem Artikel.

Gruß
Martin

Re: Add-In Aktivierungs-Event

Verfasst: 23. Apr 2009, 23:48
von Pitti
Hi AliG,

Bingo, das war's was ich meinte und suchte! Hat sofort funktioniert - Vielen Dank!

Einfach die Klasse um das Interface ITabExtender erweiter und die 5 Methoden implementieren!

Im Part 1 des WHS Dev Tipps ist es genau erklärt => http://ihatelinux.blogspot.com/2008/01/ ... art-1.html

Danke & Ciao
Pitti

Re: Add-In Aktivierungs-Event

Verfasst: 23. Apr 2009, 23:52
von Pitti
Noch ein Nachtrag!

Bei Klick auf den Tab wird zuerst die Prepare und danach noch die Refresh Methode aufgerufen, also BEIDE ;-) ... bei F5 nur die Refresh! Und selbst wenn der Tab schon aktiv ist werden bei Klick auf den Tab die Methoden aufgerufen.

Nur der Vollständigkeit wegen ;-)

Gute Nacht
Pitti

Re: Add-In Aktivierungs-Event

Verfasst: 24. Apr 2009, 08:46
von Martin
Wer Brendans Testloader einsetzt muss dann den Source anpassen:

Code: Alles auswählen

      void TestPropertiesOfType(Type t, object instance)
      {
         PropertyInfo[] props = t.GetProperties();

         foreach (PropertyInfo pi in props)
         {
            try
            {
               object o = pi.GetValue(instance, null);

               //Remove if desired, returning null on some properties is ok
               //if (o == null)
               //   throw new Exception("Property " + pi.Name + " returned null.");
            }
            catch (Exception ex)
            {
               throw new Exception("Property " + pi.Name + " threw an exception.", ex);
            }
         }
      }
Nach dem Kommentar //Remove if desired, returning null on some properties is ok
sind die nächsten beiden Zeilen auszukommentieren, sonst wirft der TestLoader eine Exception und stirbt.

Gruß
Martin

Re: Add-In Aktivierungs-Event

Verfasst: 1. Aug 2009, 22:21
von Capture
Ah mein Kopf *grübelschmerzen*

hab das Beispiel versucht einzulesen in der Vb 2008 Express Edition... war abe ne alte Version und was er versutch hat zu korrigieren, war dann voll daneben.
Irgendwie peil ich das nicht, wie ich das in VB einbinden soll, damit der Event klappt.

Kann nicht vieleicht einer von dem Howto
viewtopic.php?f=31&t=899
das Beispiel entsprechend erweitern um diese Sache ?
Währe echt supi für Anfänger...bin ja schon froh das ich nen Addin hinbekommen hab.. und das seit einer Woche VB.NET^^

Gruß
Cap