In diesem Artikel stelle ich eine kleine Helferklasse vor, mit deren Hilfe man für ein Storyboard (Silverlight 4) zusätzliche Ereignisse bereitstellen kann. Die Storyboard Klasse kennt regulär nur ein einziges Ereignis, das ist das Completed-Ereignis. Dieses Ereignis feuert, wenn das Storyboard-Objekt die Wiedergabe beendet hat. Es gibt aber eine Vielzahl von denkbaren Szenarien, in denen zusätzliche Ereignisse sehr nützlich wären.
Dieser Artikel beschreibt eine Technik, wie man zwar nicht der Klasse Storyboard selbst, aber über einen kleinen Trick mittels einer helfenden Klasse zusätzliche Ereignisse für ein bestimmtes Storyboard bereitstellen kann. Diese Klasse wird zwei zusätzliche Ereignisse eines Storyboard bereitstellen, auf die anwendungsweit reagiert werden kann. Das sind beispielhaft die folgenden beiden Ereignisse:
1. OnStoryboardStarted-Ereignis
2. OnStoryboardPositionChanged-Ereignis.
Den Nutzen der fertigen Klasse demonstriere ich dann anhand eines kleinen Beispiels, bei dem der VisualState eines beliebigen UI-Elements an einer bestimmten Timeline-Position eines laufenden Storyboards geändert wird.