Seiten

Donnerstag, 31. März 2011

Beispiel eines kreisrunden ProgressBar

In der Expression Gallery findet Ihr ein neues Beispielprojekt für einen kreisrunden ProgressBar-Style. Das Beispiel benutzt einen Style für das ProgressBar-Steuerelement und etwas code behind, um die Funktionalität zu implementieren.

Mittwoch, 23. März 2011

Movie Countdown in Silverlight

In der Expression Gallery findet Ihr ein Beispiel für einen "Movie Countdown", realisiert in Silverlight. Es gibt sicherlich viele andere Herangehensweisen, um einen "Movie CountDown" zu bauen. Ich habe den Ansatz gewählt, ein ProgressBar-Steuerelement als Grundlage zu nehmen.

Hier ist das Beispiel:

Sonntag, 20. März 2011

Freihändiges Zeichnen LayoutPaths zur Laufzeit

In der Expression Gallery findet Ihr ein kleines Beispiel-Projekt für das freihändige Zeichnen von LayoutPaths für eine PathListBox zur Laufzeit.

Hier geht's zum Download.

Donnerstag, 17. März 2011

Eine Umfrage - Werbung in diesem Blog?

Seit Längerem denke ich darüber nach, wie die Leser meines Blogs es wohl aufnehmen würden, wenn ich es zulassen würde, dass in diesem Blog Werbung geschaltet wird. Ich möchte das in Eure Hände legen und deswegen Eure Meinung dazu erfragen.

Dienstag, 15. März 2011

Bildvergleich mithilfe eines GridSplitter

Dieses Beispiel demonstriert, wie man ein GridSplitter-Steuerelement verwendet, um zwei Bilder zu vergleichen. So kann man beispielsweise einen Vergleich vorher nachher umsetzen.

Montag, 14. März 2011

Half Square UserControl

Ich habe ein UserControl entwickelt, mit dem ein Halbquadrat erstellt werden kann. Den Download gibt es als .dll in der Expression Gallery. Einen Artikel über die Berechnungslogik für ein Halquadrat, erstellt aus einem RegularPolygon, findet Ihr hier.

Dienstag, 8. März 2011

VB.NET-Version von Beat Kiener's DependencyPropertyChangedListener für Silverlight

Beat Kiener veröffentlichte in seinem Blog vor einiger Zeit einen sehr nützlichen Artikel, in dem er eine von ihm entwickelte DependencyPropertyChangedListener Klasse für Silverlight vorstellte.

Hier geht es zu dem lesenswerten Artikel von Beat Kiener, wo es auch den Quellcode der C#-Version gibt.

Der DependencyPropertyChangedListener ermöglicht es, nach Veränderungen des Werts einer Abhängigkeitseigenschaft zu lauschen und über ein Event hierüber benachrichtigt zu werden. Das ist in vielen Szenarien eine sehr nützliche Sache.

Ich habe den DependencyPropertyChangedListener von Beat Kiener übersetzt nach VB.NET. Denn ich konnte die Klasse in einem VB.NET-Projekt sehr gut brauchen. Beat Kiener war so freundlich und gab mir die Erlaubnis, die von mir übersetzte VB.NET-Version hier in meinem Blog zu veröffentlichen. Vielen Dank nochmal dafür!

Hier also ist der Quellcode der VB.NET-Version (die originalen Kommentare habe ich beibehalten):

Sonntag, 6. März 2011

How To: Ein Halbquadrat aus einem RegularPolygon (Dreieck) erstellen

Das ist ein Halbquadrat, auch bezeichnet als gleichschenklig-rechtwinkliges Dreieck:


Ein Halbquadrat wird als Halbquadrat bezeichnet, weil man es erzeugen kann, indem man ein Quadrat über seine Diagonale teilt. Dieser Artikel beschreibt, wie man ein solches Halbquadrat aus einem RegularPolygon erstellt. Dabei soll das Halbquadrat in einem quadratischen Canvas-Steuerelement platziert werden und zwar exakt so, dass es das Canvas über seine Diagonale teilt. Außerdem soll das Halbquadrat auch dann, wenn es einen Rand hat, also eine StrokeThickness mit einem Wert größer als "0", jeweils exakt positioniert bleiben. Das ist etwas trickreich. Schließlich soll das Halbquadrat so konfiguriert werden, dass es nur über eine einzige Eigenschaftsänderung ("Rotation") die Eck-Ausrichtung des rechten Winkels ändert.

Auf geht's.

Mittwoch, 2. März 2011

How To: Eine Aktion erst mit der vollständigen Sichtbarkeit einer Anwendung im Browserfenster starten

In meinem letzten Artikel habe ich beschrieben, wie man ein Storyboard erst dann startet, wenn die Anwendung im Browserfenster sichtbar wird. Die dort vorgestellte Lösung hat jedoch eine Beschränkung. Diese Beschränkung besteht darin, dass das Storyboard schon dann startet, wenn die Anwendung auch nur teilweise im Browserfenster sichtbar wird. Das liegt daran, dass das Ereignis "CompositionTarget.Rendering()" feuert, sobald auch nur ein Pixel der Anwendung sichtbar wird.

In diesem Artikel beschreibe ich eine Lösung, die es ermöglicht, eine Aktion erst dann zu starten, wenn die Anwendung vollständig im Browserfenster sichtbar ist. Diese Technik kann beispielsweise für das Erstellen einer Silverlight-Anwendung nützlich sein, mit der eine Werbung dargestellt werden soll.