Die View

Mit Hilfe der Extensible Application Markup Language (XAML) kann die View beschrieben werden. Jeder der HTML kennt, wird sich schnell in XAML einarbeiten können. Einige Beispiele werden in dieser Arbeit beschrieben. Die View hat die Aufgabe die Daten aus dem Model für den Benutzer lesbar in der Anwendung darzustellen. Hierbei ist Kreativität gefragt. Um nun einen ersten Einblick in XAML zu ermöglichen ist nachstehend die Oberfläche für unser Beispielprojekt in der StatusMessageView.xaml beschrieben.

[sourcecode language=”html”]
<UserControl x:Class="T_SimpleDataBinding.StatusMessageView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-
compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008">
<Grid>
<TextBlock Text="[Hier soll der Serverstatus angezeigt werden!]"/>
</Grid>
</UserControl>

[/sourcecode]

Listing 2 View für Beispielanwendung “Einfaches Data Binding”

Das erste Tag (UserControl) leitet die Oberflächenbeschreibung ein. Die Attribute dieses Tags sind Namespace Deklarationen und werden vom Visual Studio selbst generiert, was sehr nützlich ist. Da XAML nichts weiter eine Repressentation der WPF- oder Silverlight- Klassen ist müssen bestimmte Namenskonventionen eingehalten werden, damit die Oberfläche fehlerfrei implementiert werden kann. Mit Hilfe der Namespaces, kann das XAML validiert werden, um Fehler präventiv entgegenzuwirken.

In dem UserControl befindet sich das Grid, welches ein Container ist, in dem Oberflächenelemente arrangiert werden können. In unserem Fall liegt in dem Grid zunächst ein simpler TextBlock, der in naher Zukunft die Statusnachricht aus dem Model anzeigen soll. Diese Oberfläche hat aber noch nichts mit Grafikgestaltung zu tun. Für eine ansprechende Programmoberfläche sollte stets ein Designer für das Team arbeiten.

Aus dem oberen Absatz ergeben sich nun bereits zwei Fragen. Als erstes muss geklärt werden, wie die Daten vom Model in die View geladen werden. Eine ebenso interessante Frage ist, warum in dieser Arbeit über Softwarearchitektur der Grafikdesigner erwähnt wird. Beide Fragen lassen sich sehr leicht beantworten. Aufgrund der Struktur des MVVM ist es möglich Designer ohne jedwede Programmierkenntnis in das Softwareprojekt zu integrieren. Dazu muss man sich an eine wichtige Regel halten: Die View darf keine Geschäftslogik enthalten. Die View kann also komplett von Grafikern entworfen werden, ohne dass eine Zeile Code geschrieben werden muss. Dies wird durch Microsofts Expressen Blend ermöglicht. Die Funktionalität dieses Werkzeugs wird im späteren Verlauf der Arbeit erläutert.

Nun ist das Chaos komplett. Der Programmierer soll also die Geschäftslogik implementieren und der Grafiker die Oberfläche gestalten und animieren. Wie kommen die Arbeitsergebnisse nun zusammen? Im nächsten Kapitel erfahren Sie wie diese getrennten Welten miteinander verbunden werden.

Gregor

Gregor Woiwode ist Angestellter der heco GmbH, wo er als Sofwareentwickler und Trainer tätig ist. Sein Fokus liegt in der Erstellung von Webportalen mit dem .NET- und Angular-Framework. Von 2007 bis 2010 studierte er Telekommunikationsinformatik an der Hochschule für Telekommunikation in Leipzig und schloss den Studiengang als Bachelor of Engineering ab. Derzeit studiert er im Studiengang Wirtschaftsinformatik um die Auszeichnung Master of Science zu erhalten.

What do you think? Please leave a Comment below!