Bernd Marquardt Microsoft Windows Presentation Foundation Crashkurs Microsoft Dmcc
Inhaltsverzeichnis Vorwort Für wen ist dieses Buch gedacht? Beispieldateien zu diesem Buch Support I 1 Einführung und Grundlagen 1 Aller Anfang ist schwer 2 Architektur 3 Das.NET Framework 3.0 4 Installation 4 Vektor-Grafik 5 Trennung von Design und Logik 5 AML: Extensible Application Markup Language 8 Logischer und visueller Baum 16 Applikationstypen mit WPF 17 Die AML-Syntax im Überblick 22 Ein eigenes AMLPad 25 Zusammenfassung 31 2 Steuerelemente 33 Einführung 34 Weitergeleitete Ereignisse (Routed Events) 35 Weitergeleitete Befehle (Routed Commands) 43 Eigenschaften der Abhängigkeiten 48 Eingaben 51 Schaltflächen 53 Bildlaufleisten und Schieberegler 55 Steuerelemente für die Texteingabe 59 Das Label-Element 63 Menüs 65 Werkzeugleisten (Toolbars) 70 Zusammenfassung 72 3 Layout 73 Das StackPanel 74 DasDockPanel 76 DasGrid 80 Das GridSplitter-Element 86
VI Inhaltsverzeichnis Das UniformGrid 88 Das Canvas-Element 90 Das Viewbox-Element 91 Text-Layout 93 DasWrapPanel 97 Standard-Layout-Eigenschaften 98 Width- und Height-Eigenschaft 98 MinWidth-, MaxWidth-, MinHeight- und MaxHeight-Eigenschaft 98 HorizontalAlignment- und VerticalAlignment-Eigenschaft 99 Margin-Eigenschaft 99 Padding-Eigenschaft 100 Eigenes Layout 101 Ein Bildbetrachter 106 Zusammenfassung 111 4 Grafische Grundelemente 113 Grundlagen 114 Die Grafik-Auflösung 121 Die grafischen Grundelemente 123 Rechteck und Ellipse 124 Einfache Transformationen 126 Die Linie 128 DiePolylinie 129 Das Path-Element 133 Hit-Testing mit dem Path-Element 145 Die Pinsel (Brushes) 148 Die Color-Struktur 148 Der SolidColorBrush 149 Der LinearGradientBrush 150 Der RadialGradientBrush 152 Der ImageBrush 156 Das DrawingBrush-Element 157 Das VisualBrush-Element 159 Stifte (Pens) 161 Transformationen 164 Zusammenfassung 170 5 3D-Grafik 171 Grundlagen der 3D-Grafik 172 Elemente einer 3D-Darstellung 173 Die Kamera 173 Lichtquellen 175 Das Modell 177 Ein Würfel in 3D 181
Inhaltsverzeichnis VII Eine Kugel in 3D 187 Transformationen mit 3D-Elementen 194 Mehrere 3D-Objekte 198 Hit-Tests in der 3D-Welt 205 Material 206 3D-Grafik und Steuerelemente 215 Zusammenfassung 217 6 Animationen 219 Grundlagen 220 Animationen mit AML und Code 222 Standardeigenschaften bei Animationen 228 Standard-Animationstypen 235 Animationen mit Kurven 240 Animationen mit Key Frames 243 Die Diskrete Key Frame-Animation 245 Die lineare Key Frame-Animation 246 Die Key Frame-Animation mit Splines 247 Animation der Transparenz 250 Animation von Transformationen 252 Animationen mit 3D-Grafik 256 Steuerung von Storyboard-Elementen 260 Animationen und Hit-Testing 263 Eine Uhr mit animierten Transformationen 265 Zusammenfassung 269 7 Datenbindung 271 Grundlagen 272 Datenbindung an eine Komponente 275 Datenbindung an Listen 281 Datenbindung im Code 284 Konvertierungen bei der Datenbindung 287 Datenbindung und Debuggen 292 Datenbindung und Transformationen 292 Datenbindung und das VisualBrush-Element 294 Andere Datenquellen 298 Zusammenfassung 300 8 Ressourcen 301 Erzeugung und Nutzung von Ressourcen 302 Ressourcen zur Laufzeit 304 Dynamische oder statische Ressourcen 305 Grafiken als Ressourcen 306 Zusammenfassung 308
V" 1 Inhaltsverzeichnis 9 Stile und Vorlagen für Steuerelemente 309 Ein Beispiel ohne Stil 310 Stil-Definition mit Namen 311 Die Style-Eigenschaft TargetType 312 Mehrfachbenutzung von Stilelementen 316 Vererbung von Stilelementen 317 Stil aus dem Code modifizieren 318 Einen Stil zur Laufzeit laden 320 Trigger 324 Property Triggers 324 Data Triggers 326 Event Triggers 328 Vorlagen für Steuerelemente 329... und noch ein Taschenrechner 332 Zusammenfassung 339 10 Interoperabilität 341 Grundlagen 342 Windows Forms-Steuerelemente in WPF 343 Einschränkungen mit dem WindowsFormsHost 346 WPF-Elemente in Windows Forms 346 Windows Forms-Dialogfenster aus WPF 348 WPF-Elemente in Win32-/MFC-Anwendungen 349 MFC-Steuerelemente in WPF 355 Vergleich Windows Forms- und WPF-Elemente 355 Zusammenfassung 358 11 Multithreading mit WPF 359 Das Dispatcher-Objekt 360 Die Klasse DispatcherTimer 366 Die Klasse BackgroundWorker 367 Zusammenfassung 370 12 AML-Werkzeuge 371 Microsoft Expression Blend 372 Microsoft Expression Design 373 ZAM 3D von Electric Rain 374 Aurora von Mobiform 375 Zusammenfassung 376 Stichwortverzeichnis 377