Projektgruppe Visual Analytics - Medieninformatik und Multimedia ...
Projektgruppe Visual Analytics - Medieninformatik und Multimedia ...
Projektgruppe Visual Analytics - Medieninformatik und Multimedia ...
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
4.2 Einführung in die Windows Presentation Fo<strong>und</strong>ation 75<br />
PresentationCore<br />
MilCore<br />
DirectX<br />
Grafikkarte<br />
<strong>Visual</strong>Tree<br />
.NET<br />
Composite Tree<br />
Native<br />
Abbildung 4.2: WPF-Bäume [Hub08]<br />
Programmiermodelle, denn es müssen nicht alle Elemente neu gezeichnet werden,<br />
sondern nur die, die sich verändert haben.<br />
4.2.2 WPF-Konzepte<br />
Dieser Abschnitt dient dazu, einem Leser, der keine Kenntnisse von WPF besitzt, die<br />
nötigen Gr<strong>und</strong>lagen von WPF zu vermittelt, die benötigt werden, um diese Arbeit zu<br />
verstehen.<br />
Die Extensible Application Markup Language<br />
Der Einsatz von XAML bringt weitere Möglichkeiten. XAML ist deklarativ <strong>und</strong> eignet<br />
sich daher gut zur Oberflächenbeschreibung. Durch Trennung von Design <strong>und</strong> Code<br />
wird der Einsatz von Code-Generatoren vereinfacht. Des Weiteren wird hierdurch die<br />
Arbeitsaufteilung zwischen Designer <strong>und</strong> Programmierer gefördert, da diese relativ<br />
unabhängig voneinander entwickeln können. Während sich der Programmierer mit der<br />
Anwendungslogik beschäftigt, kann der Designer mit Hilfe von speziellen Werkzeugen,<br />
wie z.B. Expression Blend, die Benutzeroberfläche entwickeln, oder eine bereits<br />
entwickelte Oberfläche bearbeiten.<br />
XAML ist eine auf XML-basierende deklarative Sprache, die zur Erstellung von WPF<br />
GUI Komponenten verwendet wird. Listing 4.1 zeigt ein einfaches XAML Beispiel zur<br />
Deklaration eines Windows, das zwei Buttons enthält. Im nachfolgenden Abschnitt wird<br />
immer auf die Zeilennummern dieses Beispiels referenziert, um Beispiele zu geben.<br />
In XAML werden XML-Tags zur Erstellung eines Objektes einer Klasse verwendet.<br />
Über XML-Namespaces wird festgelegt, in welchen Assemblies diese Klassen zu finden<br />
sind. Damit es möglich ist, eine Klasse in XAML zu instanziieren, muss sie einen<br />
parameterlosen <strong>und</strong> öffentlichen Konstruktor besitzen. Alle öffentlichen Eigenschaften<br />
der Klasse können über XML-Attribute gesetzt werden. Zum Beispiel wird in Zeile<br />
acht die Hintergr<strong>und</strong>farbe des Buttons auf Weiß gesetzt. Da die Werte in XML immer