
Mit der so genannten Womanizer App startete mein Einstieg in die Windows-Phone-Entwicklung. Die Anwendung ist in Deutschland eine der Topanwendungen der Kategorie „Foto“. Es handelt sich um eine kleine Spaßanwendung mit sehr wenigen, überschaubaren Use Cases. Aus Entwicklersicht diente die Anwendung einerseits dazu, mit Windows Phone erste Erfahrungen zu sammeln, andererseits sollte sie auch nativ für iOS und Android implementiert werden.

Mittlerweile ist das Windows-Phone-Betriebssystem schon seit über einem Jahr auf dem Markt. Mit der Aktualisierung auf Windows Phone 7.5 (Codename: Mango) kamen im Oktober 2011 Features wie Multitasking, verbesserte Social-Network-Integration (Facebook und Twitter), Threads für Nachrichten und viele mehr dazu. Auch an der Performance wurde stark gearbeitet, wodurch das Betriebssystem nach dem Update auf Mango deutlich schneller erscheint. In diesem Artikel werfen wir einen Blick auf die Vergangenheit, Gegenwart und Zukunft des Windows Phone.

Microsoft stellte Ende August den Release Candidate für Silverlight 5 zur Verfügung. Dieser enthält neben einigen aus der Betaversion bekannten Features, wie das XAML Binding Debugging, eigene Markup Extensions, implizite Data Templates oder 3-D-Unterstützung, weitere Neuerungen. Darunter fallen vertrauenswürdige Applikationen im Browser, zum Beispiel die aus .NET bereits bekannten „P/Invoke“-Aufrufe mittels „DllImport“-Attribut oder das vektorbasierte Drucken. Dieser Artikel gibt einen kurzen Einblick in die Topfeatures von Silverlight 5.

Microsoft entwickelt mit Hochtouren an der fünften Version von Silverlight, welche in der zweiten Hälfte dieses Jahres erscheinen soll. Zum ersten Mal wurde Silverlight 5 von Scott Guthrie Anfang Dezember 2010 beim sog. "Silverlight Firestarter"-Event erwähnt und vorgestellt. Es gibt interessante Neuerungen wie Breakpoints in XAML, die Möglichkeit für eigene Markup Extensions, vektorbasierte Druckunterstützung und vieles mehr. Lesen Sie weiter, um die geplanten Features kennenzulernen.

Die vertrauenswürdigen Out-of-Browser-Anwendungen in Silverlight 4.0 bieten neben dem Zugriff auf lokale Dateien die Möglichkeit, via COM+ mit anderen Anwendungen zu kommunizieren oder Funktionen des Betriebssystems aufzurufen. Wie sich damit beispielsweise aus Outlook eine E-Mail versenden lässt oder wie Daten nach Excel exportiert werden, zeigt dieser Artikel nach einem Blick auf die Grundlagen.

Das Model-View-ViewModel-Pattern ist das "State of the Art"-Pattern für WPF- und Silverlight-Anwendungen. Es wurde bereits in zahlreichen Artikeln beschrieben. Der vorliegende Artikel soll nicht eine weitere Variante sein. Stattdessen wird hier gezeigt, wie sich aus einem ViewModel Dialoge öffnen und zur Designzeit Daten anzeigen lassen. Vorweg zeigt der Artikel auch noch einige Tipps zum Erstellen von ViewModel-Klassen und zum Verwenden von Commands.

Die Taskbar von Windows 7 bietet nützliche Möglichkeiten für die eigene Anwendung. Zum einen sind dies die so genannten Jumplists, zum anderen lässt sich der Taskbar-Button Ihrer Anwendung anpassen oder Command-Buttons im Vorschaufenster anzeigen. Die WPF stellt im .NET Framework 4.0 im Namespace "System.Windows. Shell" ein paar Wrapper-Klassen zur Verfügung, um diese Windows-7-Möglichkeiten auf einfache Weise in eigenen WPF-Anwendungen zu nutzen. Dieser Artikel gibt einen überblick und zeigt, wie es funktioniert.

Mit Behaviors steht für Silverlight und die WPF eine Möglichkeit zur Verfügung, einem UI- Designer das Einbinden einzelner Codestücke einfach zu ermöglichen. Der Designer kann in Expression Blend ein wiederverwendbares Codestück in Form eines Behaviors direkt einem visuellen Element zuordnen. Auf der anderen Seite gibt es den Entwickler, der den in sich ge- schlossenen Code programmiert. Es lassen sich auf einfache Weise Bibliotheken mit Behaviors erstellen. Ein Behavior kann dabei einfach sein, wie das Starten oder Stoppen einer Animation, oder komplex, wie das Ausstatten eines Elements mit einem physischen Effekt. Dieser 6. Teil unserer Silverlight-Serie zeigt die Grundlagen zu Behaviors in Silverlight.
[Artikel][Sourcecode]
JavaScript-Methoden in Silverlight aufzurufen ist sinnvoll, wenn komplexer JavaScript-Code in Ma- naged Code konvertiert werden muss. Auch aus JavaScript eine Silverlight-Methode aufzurufen, ist möglich.Wie es geht und wo das HTML DOM ins Spiel kommt, zeigt dieser fünfte Teil der Serie.
[Artikel][Sourcecode]
Daten lokal auf dem Client zu speichern, ist nichts Neues. Viele Webseiten verwenden Cookies, um den Benutzer beim erneuten Besuch wiederzuerkennen und die Seite gemäß seinen Einstellungen anzuzeigen. Mit Silverlight sind Cookies nicht notwendig, es steht der aus .NET bekannte Isolated Storage zur Verfügung. Teil 4 der Silverlight-Serie.
[Artikel][Sourcecode]
Es gibt keine Geschäftsanwendung, die ohne Daten auskommt. In einer Silverlight- Anwendung werden Daten üblicherweise über einen Web Service geladen. Seit dem Ser- vice Pack 1 für .NET 3.5 lassen sich neben reinen WCF-Services auch so genannte ADO. NET Data Services verwenden. Diese ermöglichen einen REST-basierten Zugriff via URL. Silverlight besitzt für die ADO.NET Data Services im Namespace System.Data.Services. Client ein eigenes API, mit dem der Zugriff nahezu zum Kinderspiel wird.
[Artikel][Sourcecode]
Auf die Darstellung von Datensätzen in Form einer Liste kann in kaum einer Geschäftsanwendung verzichtet werden. Dafür wird meist das DataGrid verwendet. Das Silverlight SDK enthält ein solches DataGrid, das nützliche Eigenschaften besitzt. Auch wenn die DataGrids von Drittherstellern noch mehr Funktionalität bieten, genügt in vielen Fällen das Silverlight-eigene den Anforderungen. Teil 2 der Silverlight-Serie.
[Artikel][Sourcecode]
Besonders WPF-Entwickler, die in Silverlight erste Gehversuche wagen, vermissen einige aus der WPF lieb gewonnene Steuerelemente. So enthält Silverlight in der Version 2 weder ein TreeView- noch ein Expander-Steuerelement, weder ein DockPanel noch ein WrapPanel. Diese und weitere Komponenten, Chart-Werkzeuge und professionelle Themen stellt Microsoft als "Silverlight Toolkit" zur Verfügung.
[Artikel][Sourcecode]
Sowohl in Silverlight als auch in der WPF wird das Erscheinungsbild eines Controls über ein ControlTemplate definiert. Dieses enthält alle visuellen Elemente, um das Control darzustellen. Allerdings ist die statische Darstellung eines Controls meist nicht ausreichend. Der Benutzer erwartet bei der Interaktion mit einem Control, dass sich dessen Aussehen ändert, beispielsweise wenn er die Maus über das Control bewegt. Genau an dieser Stelle kommen in Silverlight die "Visual States" ins Spiel.
[Artikel][Sourcecode]
Beispielapplikationen, welche die neuen Fähigkeiten der Windows Presentation Foundation (WPF), wie Media-Unterstützung, 3D oder Animationen zeigen, gibt es mittlerweile zuhauf. Wie dagegen die Architektur einer kompletten WPF-Anwendung aussehen könnte und ob WPF auch für normale Geschäftsanwendungen Vorteile bringt, ist heute noch nicht wirklich klar. Dieser Artikel stellt mit dem Model-View-ViewModel-Pattern eine Architektur für WPF-Anwendungen vor, die in Zukunft als Grundlage für neue Anwendungen dienen könnte.
[Artikel][Sourcecode]
Die in .NET 3.0 neu eingeführten Dependency Properties sind in der Windows Presentation Foundation (WPF) die Grundlage für Merkmale wie Animationen, Data Binding oder Styles. Reguläre Properties erreichen diese Funktionalität nur durch zusätzlichen Code.
[Artikel][Sourcecode]
Mit der Einführung von .NET 3.0 bietet Microsoft neuerdings zwei Programmiermodelle für die Entwicklung von Windows-Anwendungen unter .NET an. Während die bereits mit .NET 1.0 eingeführten Windows Forms weiterhin unterstützt werden, ist die Windows Presentation Foundation (WPF) die neue strategische Plattform für die Windows-User-Interface-Programmierung. Obwohl Windows Forms und WPF eine weitestgehend identische Zielsetzung haben, die Aufbereitung und Darstellung des Inhalts von Fenstern, besitzen sie technisch kaum Gemeinsamkeiten.
[Artikel][Sourcecode]