Seiten

Freitag, 4. Februar 2011

Zweite Alternative: Storyboard soll nicht beginnen, bevor die Silverlight-Anwendung vollständig geladen ist

Hierzu hatte ich vor einiger Zeit schon einmal einen kurzen Artikel geschrieben. Das Problem ist bekannt: Ein Storyboard soll nicht starten, bevor die Anwendung vollständig geladen und sichtbar ist. Dieser Artikel zeigt eine andere, alternative Lösung auf.

Donnerstag, 3. Februar 2011

SpriteAnimationBehavior

Ich habe ein Behavior für ein Image Steuerelement entwickelt, mit dem man dem aus dem Image eine Szenerie für eine Spriteanimation machen kann. Das Behavior kann in der Expression Gallery heruntergeladen werden.

Dienstag, 1. Februar 2011

How To: Freihandzeichnung mit Path-Erstellung synchronisieren

Sharker Khaleed Mahmut beschreibt in einem Artikel, wie mithilfe eines InkPresenter zur Laufzeit auf ein Image gezeichnet werden kann. Wie das geht, könnt Ihr dort nachlesen. In diesem Artikel geht es darum, wie synchron mit einer Freihandzeichnung auf einen InkPresenter in einem Canvas-Steuerelement Path-Elemente erzeugt werden, die exakt dem entsprechen, was auf den InkPresenter gezeichnet wird. Ein Beispielprojekt mit Quellcode steht zum Download in der Expression Gallery.

Das ist ziemlich einfach und es funktioniert so.

How To: Storyboard Completed Behaviors verwenden

Kürzlich gab es eine sehr interessante Diskussion zu einer Frage, die im Expression Blend + SketchFlow Forum gestellt wurde. Die Frage war von jemandem gestellt worden, der "Expression Blend 4" als Designer nutzt. Die Frage war, wie man ein anderes Storyboard beginnen kann, unmittelbar nachdem ein Übergang in einen visuellen Zustand beendet ist oder nachdem ein Storyboard beendet ist.

Aus der Sicht eines Entwicklers ist diese Frage einfach zu beantworten. Für einen Designer, der nicht oder wenig programmieren kann, kann diese Anforderung problematisch sein. Die Diskussion erinnerte mich daran, dass Behavior eigentlich als ein Werkzeug für Designer gedacht sind.

Also machte ich mich daran, ein Behavior zu schreiben, dass diese einfachen Aufgaben erledigt. Das Ergebnis sind die StoryboardCompletedBehaviors.

Im Folgenden beschreibe ich, wie man diese Behaviors verwendet.

Der Artikel ist ganz bewußt sehr ausführlich und mit kleinen Schritten gestaltet. Fortgeschrittene Nutzer von Expression Blend können sich darauf beschränken, die "Übersicht (Overview)" und "Schritt 3" zu lesen.

Montag, 31. Januar 2011

Synchronisieren einer Freihandzeichnung mit einer realen Path-Erstellung

In der Expression Gallery findet Ihr eine neue Beispielanwendung. Das Beispiel demonstriert, wie man eine Freihandzeichnung, die zur Laufzeit mit der Maus in einem InkPresenter erzeugt wird, mit dem Erstellen von realen Pfad-Elementen in einem Canvas synchronisieren kann. In einem Canvas werden also WYSIWYG Path-Elemente erzeugt, die dem entsprechen, was auf einen InkPresenter gezeichnet wird.

Hier sind ein paar Screenshot:

Dienstag, 25. Januar 2011

Ein Bildbetrachter mit Lupe

In der Expression Gallery findet Ihr ein neues Beispielprojekt. Es ist ein Bildbetrachter mit Lupe. Einige coole features sind dabei. Schaut es Euch einfach an und spielt damit. Der Quellcode ist wie immer dabei.

Hier sind ein paar Screenshots:

Montag, 24. Januar 2011

Echte bewegliche Lupe - Silverlight 4

Ich habe ein Beispielprojekt für eine alternative Vorgehensweise zum Erstellen einer Bilder-Lupe entwickelt. Meine Lösung implementiert einen echten MagnifyEffect, der mit einem dynamischen Beschneidungspfad kombiniert ist.

Nachfolgend seht Ihr ein Beispiel, das diese Technik nutzt.

Freitag, 14. Januar 2011

How To: Sanfte Animation eines Magnify-Effekt

Kürzlich habe ich das Beispiel-Projekt "Just Fun" in der Expression Gallery veröffentlicht. Bestandteil dieses Projekts ist ein animierter Magnify-Effekt. Dieser Effekt wirkt in dem Beispiel - wie ich finde - deswegen ziemlich cool, weil das visuelle Element, auf das der Effekt angewendet wird, ein Linsenglas ist.

Dieser Artikel hier beschreibt kurz, wie man einen Magnify-Effekt sanft animiert. Er ist sehr einfach nachzuvollziehen. Das Beispielprojekt kann in der Expression Gallery angeschaut werden. Dort steht auch der Quellcode zum Download bereit.

Mittwoch, 12. Januar 2011

Einfach nur Spass

Dieses Beispielprojekt ist einfach nur Spass. Mit aktivierter Lupe erzeugt man ein unterschiedliche Gesichter, je nachdem, wo auf die Blende geklickt wird.

Dienstag, 11. Januar 2011

Bildbetrachter mithilfe eines GridSplitter-Steuerelements

Ich weiß nicht, welche Erfahrungen Ihr gemacht habt. Ich habe jedenfalls den Eindruck, dass das GridSplitter-Steuerelement eher eine Außenseiterrolle einnimmt. Also habe ich mir eine vielleicht sinnvolle Verwendung für ein GridSplitter-Steuerelement überlegt. Das Ergebnis ist der "GridSplitter Picture Viewer".

Montag, 3. Januar 2011

ChildWindowResizeBehavior Silverlight 4 - Quellcode

Vor einiger Zeit veröffentlichte ich in der Expression Gallery ein ChildWindowResizeBehavior für Silverlight 4. Das Behavior ermöglicht es, einem Silverlight 4 ChildWindow die Funktionalität hinzuzufügen, es durch das Drehen des Mausrads in seiner Größe zu verändern. Ergänzend ist ein Ereignis implementiert, mit dessen Hilfe zur Laufzeit die aktuelle Größe des ChildWindow abgefragt werden kann. Das ist das OnSizeChangedEvent.

Der ursprüngliche Download in der Expression Gallery enthielt das Behavior nur als kompilierte .dll-Datei. Für dieses Behavior findet Ihr jetzt am Ende dieses Artikels den Download-Link für den vollständigen Quellcode des Projekts (VB.NET).

Out Of Browser Experience UserControl - Quellcode

Vor ziemlich genau einem Jahr habe ich in der Expression Gallery das OOBControl Version 1.1 veröffentlicht. Dieses für Silverlight 3 entwickelte Benutzersteuerelement kapselt die Out Of Browser Funktionalität für eine Anwendung und ermöglicht es, eine Silverlight 3-Anwendung durch einfaches Einfügen des OOBControl auf die Benutzeroberfläche Out Of Browser-fähig zu machen. Bis heute haben 6.141 Designer oder Entwickler das OOBControl heruntergeladen. Vielen Dank an alle für diese tolle Resonanz. Der Download beinhaltet das UserControl allerdings nur als kompilierte .dll-Datei.

Ich habe mich entschieden, die weitere Entwicklung des für Silverlight 3 entwickelten OOBControl der Community zu überlassen und deswegen den Quellcode zu veröffentlichen. Der folgende Download-Link beinhaltet den Quellcode in VB.NET.

Download: Quellcode des OOBControl Version 1.1.