C Tworzenie aplikacji graficznych w NET 30.pdf

(414 KB) Pobierz
C#. Tworzenie aplikacji graficznych w .NET 3.0
graficznych w .NET 3.0
Autor: Krzysztof Rychlicki-Kicior
ISBN: 978-83-246-1076-1
Format: B5, stron: 304
Wydawnictwo Helion
ul. Koľciuszki 1c
44-100 Gliwice
tel. 032 230 98 63
e-mail: helion@helion.pl
Poznaj techniki budowania interfejsw uŃytkownika dla aplikacji Windows
¤ Opanuj jķzyk C# i wykorzystaj moŃliwoľci programowania obiektowego
¤ Zaprojektuj interfejs uŃytkownika, wykorzystujĴc jķzyk XAML
¤ Zaimplementuj mechanizmy obsĀugi plikw i wymiany danych
Najnowsza wersja platformy .NET, oznaczona numerem 3.0, zawiera wiele usprawnieĺ,
dziķki ktrym tworzenie aplikacji z interfejsem graficznym staĀo siķ zdecydowanie
prostsze. Czķľě platformy o nazwie Windows Presentation Foundation (WPF) wraz
z przeznaczonym wyĀĴcznie do projektowania interfejsw uŃytkownika jķzykiem XAML
pozwala na caĀkowite oddzielenie warstwy prezentacji aplikacji od warstwy logiki
i danych. WykorzystujĴc podstawowy jķzyk programowania platformy .NET Ï C# Ï
moŃna niemal bĀyskawicznie stworzyě aplikacjķ z graficznym interfejsem uŃytkownika.
KsiĴŃka â C#. Tworzenie aplikacji graficznych w .NET 3.0 Ò opisuje ten wĀaľnie jķzyk
w kontekľcie pisania programw wyposaŃonych w interfejs graficzny zbudowany
w oparciu o WPF. CzytajĴc jĴ, dowiesz siķ, jak zainstalowaě i skonfigurowaě narzķdzia
do pracy. Poznasz jķzyk C#, zasady programowania obiektowego i najwaŃniejsze klasy
platformy .NET. Nauczysz siķ konstruowaě dokumenty XAML i tworzyě aplikacje WPF.
Przeczytasz o komponentach wizualnych, zdarzeniach i programowaniu operacji
graficznych. Znajdziesz tu rwnieŃ informacje o obsĀudze plikw, poĀĴczeniach z bazami
danych oraz komunikacji sieciowej.
¤ Pobieranie i instalacja narzķdzi
¤ Podstawowe elementy jķzyka C#
¤ Programowanie obiektowe
¤ Konstruowanie dokumentw XAML
¤ Hierarchia klas komponentw wizualnych
¤ ObsĀuga zdarzeĺ
¤ Geometria 2D
¤ Operacje graficzne
¤ Tworzenie animacji
¤ Korzystanie z szablonw
¤ ObsĀuga plikw i danych
¤ Przetwarzanie dokumentw XML
¤ PoĀĴczenia z sieciĴ
Poznaj najnowszĴ wersjķ narzķdzia, ktre zrewolucjonizowaĀo proces
tworzenia oprogramowania dla systemu Windows
C#. Tworzenie aplikacji
319877772.001.png 319877772.002.png 319877772.003.png 319877772.004.png
Spis treści
Wstęp .............................................................................................. 9
Część I Przygotowanie środowiska ............................................ 11
Rozdział 1. Przygotowanie środowiska Orcas .................................................... 13
Pobieranie aplikacji ......................................................................................................... 14
Pobieranie alternatywnego instalatora ...................................................................... 15
Instalacja .......................................................................................................................... 15
Konfiguracja serwera SQL .............................................................................................. 17
Część II Język C# ...................................................................... 19
Rozdział 2. Podstawowe elementy języka ......................................................... 21
Zmienne ........................................................................................................................... 22
Stałe ................................................................................................................................. 24
Operatory ......................................................................................................................... 25
Instrukcje ......................................................................................................................... 28
Instrukcja warunkowa ............................................................................................... 29
Instrukcja switch ....................................................................................................... 30
Pętle ................................................................................................................................. 31
Pętla for ..................................................................................................................... 31
Pętle while i do..while ............................................................................................... 31
While vs for ............................................................................................................... 32
Komentarze ...................................................................................................................... 33
Tablice ............................................................................................................................. 33
Tablice zagnieżdżone ................................................................................................ 34
Tablice wielowymiarowe .......................................................................................... 35
Rzutowanie ...................................................................................................................... 36
Typ wyliczeniowy ........................................................................................................... 37
Pytania testowe ................................................................................................................38
Rozdział 3. Wszystko jest obiektem! ................................................................ 39
Tworzenie klas .................................................................................................................40
Pola ............................................................................................................................ 40
Metody ...................................................................................................................... 40
Konstruktor ................................................................................................................ 41
Modyfikatory dostępu ............................................................................................... 42
Destruktor .................................................................................................................. 43
 
4
C#. Tworzenie aplikacji graficznych w .NET 3.0
Przestrzenie nazw ............................................................................................................ 44
Dziedziczenie ................................................................................................................... 45
Abstrakcja a programowanie obiektowe ......................................................................... 46
Tworzenie klasy potomnej ........................................................................................ 46
Metody — zaawansowane możliwości ........................................................................... 48
Nadpisywanie metod nieabstrakcyjnych ................................................................... 48
Metody statyczne ....................................................................................................... 49
Przeładowywanie metod ........................................................................................... 50
Klasy finalne .................................................................................................................... 50
Polimorfizm ..................................................................................................................... 51
Virtual i override vs new ........................................................................................... 51
Słowa kluczowe as i is .............................................................................................. 52
Przykład zastosowania polimorfizmu ....................................................................... 52
Pytania testowe ................................................................................................................53
Rozdział 4. Jeśli nie klasa, to co? ..................................................................... 55
Struktury .......................................................................................................................... 55
Słowa kluczowe ref i out ........................................................................................... 56
Zastosowanie struktur ............................................................................................... 58
Właściwości ..................................................................................................................... 59
Właściwości w praktyce ............................................................................................ 60
Interfejsy .......................................................................................................................... 61
Interfejsy w praktyce ................................................................................................. 62
Jawna implementacja interfejsów ............................................................................. 63
Delegacje ......................................................................................................................... 65
Zdarzenia ......................................................................................................................... 66
Tworzenie zdarzeń .................................................................................................... 68
Indeksery ......................................................................................................................... 70
Wyjątki ............................................................................................................................72
Klasy wyjątków ......................................................................................................... 73
Słowo using raz jeszcze ................................................................................................... 74
Typy nullowalne .............................................................................................................. 75
Typy generyczne .............................................................................................................. 76
Pytania testowe ................................................................................................................77
Część III .NET 3.0 ...................................................................... 79
Rozdział 5. Przykłady ważnych klas w .NET ....................................................... 81
Klasa Object .................................................................................................................... 81
Klasa DependencyObject (System.Windows) ................................................................. 82
Klasa Freezable (System.Windows) ................................................................................ 82
Klasa String ..................................................................................................................... 83
Klasa Array ...................................................................................................................... 84
Klasa ArrayList (System.Collections) ............................................................................. 85
Pytania testowe ................................................................................................................86
Rozdział 6. Zasady konstruowania dokumentów XAML ..................................... 87
XML i XAML ................................................................................................................. 87
XAML w praktyce ........................................................................................................... 89
Rozszerzenia znaczników ................................................................................................ 91
Zasoby podstawą aplikacji graficznych .................................................................... 91
Style — jedna deklaracja, wiele zastosowań ................................................................... 93
Zdarzenia ......................................................................................................................... 94
Wstawianie kodu XAML i C# w jednym pliku ........................................................ 95
Wstawianie kodu w osobnym pliku .......................................................................... 95
Spis treści
5
Name i x:Name w jednym byli kodzie ...................................................................... 96
Zdarzenia a style ........................................................................................................ 96
Właściwości dołączane .................................................................................................... 97
Pytania ............................................................................................................................. 98
Rozdział 7. Struktura aplikacji WPF ................................................................ 101
Tworzenie aplikacji w środowisku programistycznym ................................................. 101
Teoria w praktyce. PPP — Pierwszy Prosty Program ................................................... 106
Pytania testowe .............................................................................................................. 109
Rozdział 8. Hierarchia klas komponentów wizualnych ...................................... 111
System.Windows.Media.Visual .................................................................................... 112
System.Windows.UIElement ......................................................................................... 113
Obliczanie i ustawianie ........................................................................................... 114
System.Windows.FrameworkElement .......................................................................... 114
System.Windows.Controls.Control ............................................................................... 116
System.Windows.Controls.Panel .................................................................................. 116
Pytania testowe .............................................................................................................. 117
Rozdział 9. Komponenty wizualne ................................................................... 119
Button ............................................................................................................................ 119
TextBox ................................................................................................................... 120
TextBlock ................................................................................................................ 123
ListBox .................................................................................................................... 125
Image ............................................................................................................................. 127
Wyświetlanie z wymiarami ..................................................................................... 128
Menu .............................................................................................................................. 130
CheckBox ...................................................................................................................... 131
RadioButton ................................................................................................................... 133
ToolTip .......................................................................................................................... 133
ComboBox ..................................................................................................................... 135
ContextMenu ................................................................................................................. 136
TabControl ..................................................................................................................... 137
ScrollViewer .................................................................................................................. 138
ProgressBar .................................................................................................................... 139
ProgressBar a Slider ................................................................................................ 139
StatusBar ........................................................................................................................ 140
Pytania testowe .............................................................................................................. 141
Rozdział 10. Zdarzenia w praktyce ................................................................... 143
Zdarzenia w WPF .......................................................................................................... 143
Przykłady… ............................................................................................................. 144
Najważniejsze zdarzenia w WPF ............................................................................ 145
RoutedEventArgs a klasa EventArgs ...................................................................... 147
Pytania testowe .............................................................................................................. 148
Rozdział 11. Pojemniki ..................................................................................... 149
StackPanel ..................................................................................................................... 149
DockPanel ...................................................................................................................... 150
Canvas ........................................................................................................................... 151
WrapPanel ............................................................................................................... 152
Grid .......................................................................................................................... 153
Pytania testowe .............................................................................................................. 154
6
C#. Tworzenie aplikacji graficznych w .NET 3.0
Część IV Zaawansowane zagadnienia graficzne ......................... 157
Rozdział 12. Geometria 2D ............................................................................... 159
Klasa Geometry ............................................................................................................. 159
EllipseGeometry ............................................................................................................ 160
PathGeometry ................................................................................................................ 160
GeometryGroup ............................................................................................................. 163
GeometryGroup a mieszanie figur w klasie CombinedGeometry .......................... 164
Kształty — zastosowanie i użycie ................................................................................. 165
Pytania testowe .............................................................................................................. 166
Rozdział 13. Pozostałe ważne operacje graficzne .............................................. 169
Transformacje ................................................................................................................ 169
ScaleTransform ....................................................................................................... 169
RotateTransform ...................................................................................................... 170
SkewTransform ....................................................................................................... 171
TranslateTransform ................................................................................................. 172
Grupy transformacji ................................................................................................ 172
Rysunki .......................................................................................................................... 172
Pędzle ............................................................................................................................. 173
SolidColorBrush ...................................................................................................... 174
LinearGradientBrush ............................................................................................... 174
RadialGradientBrush ............................................................................................... 175
ImageBrush ............................................................................................................. 176
DrawingBrush ......................................................................................................... 176
VisualBrush ............................................................................................................. 177
Pióro ........................................................................................................................ 178
Efekty bitmap ................................................................................................................ 180
Pytania testowe .............................................................................................................. 182
Rozdział 14. Animacje ..................................................................................... 183
Triggery ......................................................................................................................... 183
Animacje ........................................................................................................................ 186
Animacje podstawowe (From / To / By) ................................................................. 188
Animacje z użyciem klatek kluczowych ................................................................. 189
Wiele animacji w jednej .......................................................................................... 196
Kontrola uruchomionej animacji ............................................................................. 196
Pytania testowe .............................................................................................................. 199
Rozdział 15. Szablony ...................................................................................... 201
Podstawowe operacje na szablonach ............................................................................. 201
Klasa Template ........................................................................................................ 201
Wykorzystywanie szablonu w stylach .................................................................... 204
TemplateBinding ..................................................................................................... 205
Szablony a triggery ........................................................................................................ 206
Pytania testowe .............................................................................................................. 208
Część V Obsługa danych .......................................................... 209
Rozdział 16. WPF i system plików .................................................................... 211
Pliki i katalogi ................................................................................................................ 211
Struktura katalogów ................................................................................................ 212
Directory .................................................................................................................. 213
File ........................................................................................................................... 215
Tworzenie plików .................................................................................................... 217
Zgłoś jeśli naruszono regulamin