Dieser Artikel hat zwar nichts mit Outlook und VSTO zu tun, dennoch hat zumindest die Optik eine gewisse Ähnlichkeit mit der neuen Oberfläche der Microsoft Office Anwendungen. In der aktuellen Silverlight CTP von Infragistics ist jetzt ein Ribbon Control (XamlWebRibbon) enthalten. Dadurch ist es sehr einfach Geschäftsanwendungen mit Silverlight zu erstellen. Wie es der Zufall gerade will, arbeite ich mit einem Team an der zukünftigen Lizenzierung von Applikationen. Hierbei geht es nicht alleine um die technische implementierung einer Softwarelizenzierung – nein – auch das ganze drumherum, das Backend, Infrastruktur und die Verwaltung muss natürlich bereitgestellt werden. Ich habe sofort die Chance ergriffen und versuche dieses Backend mit neuesten Technologien mit Hilfe von Silverlight, RIA und Infragistics zu erstellen.

Abbildung 1: Screenshot des Infragistics Ribbon Controls für Silverlight
Normalerweise würde ich die Anwendung mit Visual Studio 2010 Beta und Silverlight 4 erstellen, da die Anwendung aber tatsächlich funktionieren soll, habe ich mich dazu entschieden Visual Studio 2008 zu verwenden. Für Silverlight 4 gibt es noch keine Runtime.
Als Datenbank soll ein Microsoft SQL-Server arbeiten, der Zugriff erfolgt mit RIA-Services mit LINQ oder Entity Framework.
Als erstes starten wir eine neue Silverlight-Applikation.
Benötigte Software und Tools
Um so eine Anwendung nachprogrammieren zu können, benötigen Sie folgende Software:
Erstellen der Anwendung
Nun bin ich kein Spezialist für Webanwendungen oder Silverlight, deshalb werde ich dieses Projekt ebenfalls als Lernapplikation verwenden. Bestenfalls habe ich eine gute Vorstellung davon, wie die Lizensierungsapplikation auszusehen hat. Vermutlich gibt es auch schon jede Menge fertige Applikationen oder Portale, welche diesen Zweck gut erfüllen und schon tausendfach erpropt sind. Egal, hier geht es um das Erlernen der Anwendung und den Einsatz moderner und neuer Technologien.
Wir beginnen also zunächst mit der Erstellung der Anwendung mit Visual Studio 2008.

Abbildung 2: Silverlight RIA Anwendung erstellen
Nachdem man alles korrekt installiert hat, findet man in den Visual Studio Projektvorlagen under dem Eintrag Silverlight die entsprechenden Templates. Als Vorlage wähle ich das Template "Silverlight Application". Als nächstes erscheind folgender Screen:

Abbildung 3: Erstellen einer Silverlight Anwendung
Ja, die Silverlight Anwendung wird in einer Webseite gehostet und ja, ich möchte RIA Services verwenden.
Nach dem Beenden das Assistenten hat man zumindest schon mal eine funktionierende Anwendungsvorlage. Ein Start der Anwendung startet den Browser und zeigt ein leeres Browserfenster.
Verwendung von Infragistics Controls
Als nächstes soll das Infragistics Ribbon in die Anwendung integriert werden.
Als erstes muss man die entsprechende DLL im Projekt referenzieren. Die Infragistics DLLs habe ich in einem Unterordner des Projektes bereitgestellt. Ich füge die DLL als Referenz hinzu.

Abbildung 4: Hinzufügen der Infragistics Referenzen zum Projekt
Jetzt wird die "Main.xaml" Datei aus Visual Studio heraus mit Expression Blend 3 geöffnet. Die Infragistics Controls findet man unter "Assets|Locactions|Infragistics...".

Abbildung 5: Expression Blend mit Infragistics Controls
Der Seite wird das XamlWebRibbon als Control hinzugefügt. Ein Ribbon hat üblicherweise verschiedene Tabs, die Tabs enthalten wiederum Gruppen und die Gruppen enthalten Bedienelemente. So stelle ich mir zunächst ein einfaches Menü für den Anwender bereit.
Der Anwender soll sein eigenes Konto sehen und die gekaufte Software oder Musik, als auch Rechnungsdokumente, Bedienungsanleitungen und andere wichtige persönliche Dokumente sofort im Zugriff haben. In Expression Blend bin ich mit den Infragistics Control leider nicht so zurecht gekommen, deshalb habe ich die Tabs und Gruppen manuell im XML hinzugefügt.
Der XAML-Code sieht dementsprechend aus:

Abbildung 6: Blend mit XAML Code und Vorschau
Startet man die Anwendung im Debugger, kann man sogleich das Ergebnis sehen.

Abbildung 7: Die Anwendung mit Ribbon im Browser
Fazit
Mit dem XamlWebRibbon Control von Infragistics lässt sich im Handumdrehen ein tolles Userinterface für eine Webanwendung erstellen. Ich bin wirklich beeindruckt wie schnell man hier eine kleine Applikation erstellen kann. Die Integration in Blend ist aber durchaus noch verbesserungswürdig. Die Anwendung ist auf meinem Webserver unter der Adresse: http://silver.x4u.de erreichbar. Ich werde weiter darüber bloggen, wie sich die Funktionalität der Anwendung mit Webservices erweitern lässt. Bleibt für mich jedenfalls ein spannendes Thema.