Andreas Kühnel
Visual C# (Galileo Computing)
2 Angebote ab € 9,99 €
Andreas Kühnel
Visual C# (Galileo Computing)
- Buch
- Merkliste
- Auf die Merkliste
- Bewerten Bewerten
- Teilen
- Produkt teilen
- Produkterinnerung
- Produkterinnerung
C# ist die primäre Sprache des .NET Frameworks; ihr gehört die Zukunft. Dieses Buch ist Ihr Begleiter: Es werden keine Programmierkenntnisse vorausgesetzt und sowohl die Bedürfnisse eines Anfängers als auch die eines Umsteigers berücksichtigt. Umfassend und außerordentlich kenntnisreich werden drei Themenblöcke behandelt: Im ersten Teil bekommen Sie eine Einführung in die Sprache C# und die objektorientierte Programmierung. Dieser Teil richtet sich besonders an Einsteiger und an Leser, die noch nicht objektorientiert unter .NET programmiert haben. Im zweiten Teil werden einige elementare…mehr
C# ist die primäre Sprache des .NET Frameworks; ihr gehört die Zukunft. Dieses Buch ist Ihr Begleiter: Es werden keine Programmierkenntnisse vorausgesetzt und sowohl die Bedürfnisse eines Anfängers als auch die eines Umsteigers berücksichtigt. Umfassend und außerordentlich kenntnisreich werden drei Themenblöcke behandelt: Im ersten Teil bekommen Sie eine Einführung in die Sprache C# und die objektorientierte Programmierung. Dieser Teil richtet sich besonders an Einsteiger und an Leser, die noch nicht objektorientiert unter .NET programmiert haben. Im zweiten Teil werden einige elementare Klassen und wichtige Programmiertechniken vorgestellt. Daran schließt sich die Windowsprogrammierung im dritten Teil an. Hier werden alle wichtigen Steuerelemente vorgestellt und eine Einführung in die Grafikprogrammierung mit GDI+ gegeben.
Aus dem Inhalt
- Das .NET-Konzept
- Die Entwicklungsumgebung
- Grundlagen der Sprache C#
- Klassen und Objekte
- Vererbung und Polymorphie
- Schnittstellen
- Fehlerbehandlung, Debugging
- Klassen des .NET Frameworks
- Multithreading
- Dateien und Streams
- Serialisierung und Attribute
- Grafische Benutzeroberflächen
- MDI-Anwendungen
- GDI+
- Printing
- Assemblies und Verteilung ...
Aus dem Inhalt
- Das .NET-Konzept
- Die Entwicklungsumgebung
- Grundlagen der Sprache C#
- Klassen und Objekte
- Vererbung und Polymorphie
- Schnittstellen
- Fehlerbehandlung, Debugging
- Klassen des .NET Frameworks
- Multithreading
- Dateien und Streams
- Serialisierung und Attribute
- Grafische Benutzeroberflächen
- MDI-Anwendungen
- GDI+
- Printing
- Assemblies und Verteilung ...
Produktdetails
- Produktdetails
- Verlag: Galileo Press
- ISBN-13: 9783898422864
- ISBN-10: 3898422860
- Artikelnr.: 24002423
- Herstellerkennzeichnung Die Herstellerinformationen sind derzeit nicht verfügbar.
- Verlag: Galileo Press
- ISBN-13: 9783898422864
- ISBN-10: 3898422860
- Artikelnr.: 24002423
- Herstellerkennzeichnung Die Herstellerinformationen sind derzeit nicht verfügbar.
Anfang der 80er Jahre kam Andreas Kühnel nach Aachen und studierte Luft- und Raumfahrttechnik. Es war die Zeit, als die ersten Heimcomputer von Commondore für jedermann erschwinglich wurden. Natürlich konnte sich auch A. Kühnel dem neuen Trend nicht verschließen und konnte einen C64 sein Eigen nennen. Damit war auch schon der erste Kontakt zu der Programmiersprache Basic hergestellt. Einige Jahre später folgte der erste PC und mit diesem sofort ein Pascal-Compiler, weil sein Interesse eindeutig in Richtung Programmierung tendierte. 1995 machte er sein Hobby zum Beruf, erwarb die Zertifizierungen "Microsoft Certified Solution Developer (MCSD)" und ist seitdem als "Microsoft Certified Trainer (MCT)" tätig. Er unterrichtet Visual Basic, mit dem er sich seit der Version 3.0 beschäftigt, COM/COM+, Datenbanktechnologien, .NET-Programmierung und C#. Dabei hat er aber nicht den Blick auf andere Entwicklungssprachen wie C/C++ und Java verloren - auch, um mit fundierten Argumenten die Vorzüge der einzelnen Sprachen objektiv darstellen zu können. Andreas Kühnel lebt immer noch in Aachen. Sie können sich mit ihm unter der Adresse KuehnelA@t-online.de in Verbindung setzen.
1 Das .NET-Konzept ... 25
... 1.1 Ein Wort zu diesem Buch ... 25
... 1.2 Das Entwicklerdilemma ... 28
... 1.3 Das Sprachenkonzept ... 30
... 1.4 Das .NET-Framework ... 34
... 1.5 Assemblies ... 38
2 Die Entwicklungsumgebung ... 41
... 2.1 Anmerkungen ... 41
... 2.2 Hard- und Softwareanforderungen ... 41
... 2.3 Die Installation ... 42
... 2.4 Die Entwicklungsumgebung von VS.NET ... 46
3 Grundlagen der Sprache C# ... 57
... 3.1 Konsolenanwendungen ... 57
... 3.2 Grundlagen der C#-Syntax ... 60
... 3.3 Variablen und Datentypen ... 68
... 3.4 Operatoren ... 94
... 3.5 Datenfelder (Arrays) 106
... 3.6 Kontrollstrukturen ... 118
... 3.7 Programmschleifen ... 129
4 Klassen und Objekte (Teil 1) ... 151
... 4.1 Einführung in die Objektorientierung ... 151
... 4.2 Die Klassendefinition ... 157
... 4.3 Die Deklaration von Objektvariablen ... 166
... 4.4 Objektmethoden ... 186
... 4.5 Objekteigenschaften ... 215
... 4.6 Konstruktoren ... 229
... 4.7 Der Destruktor ... 237
... 4.8 Assistenten der Entwicklungsumgebung ... 247
5 Klassen und Objekte (Teil 2) ... 251
... 5.1 Statische Klassenkomponenten ... 251
... 5.2 Delegate ... 268
... 5.3 Ereignisse eines Objekts ... 273
... 5.4 Strukturen - eine Sonderform der Klassen ... 282
... 5.5 Enumerationen (Aufzählungen) 293
... 5.6 Referenz- und Wertetypen ... 297
... 5.7 Namensbereiche (Namespaces) 301
6 Vererbung und Polymorphie ... 313
... 6.1 Einführung ... 313
... 6.2 Konstruktoren in Subklassen ... 319
... 6.3 Objektspezifische Methoden einer Subklasse ... 328
... 6.4 Die Methoden einer abgeleiteten Klasse ... 338
... 6.5 Ereignisse in der Vererbung ... 344
... 6.6 Hat-eine-Beziehungen ... 347
... 6.7 Typumwandlung von Objektvariablen ... 359
... 6.8 Abstrakte Klassen und Methoden ... 365
... 6.9 Polymorphie ... 368
... 6.10 Die Erweiterung der Klassenhierarchie der "CircleApplication" ... 377
7 Fortgeschrittene Techniken ... 389
... 7.1 Operatorüberladung ... 389
... 7.2 Indexer ... 403
... 7.3 Fortgeschrittene Delegat-Techniken ... 412
... 7.4 XML-Dokumentation ... 425
8 Schnittstellen ... 443
... 8.1 Einführung in die Schnittstellen ... 443
9 Fehlerbehandlung und Debugging ... 461
... 9.1 Die Behandlung von Laufzeitfehlern (Exceptions) ... 461
... 9.2 Debugging ... 485
10 Fundamentale Klassen des .NET-Frameworks ... 501
... 10.1 Allgemeines ... 501
... 10.2 Die Klasse Object ... 502
... 10.3 Die Klassen der Wertetypen ... 513
... 10.4 Die "String"-Klasse ... 522
... 10.5 Die Klasse "StringBuilder" 541
... 10.6 Die Klasse "Char" 547
... 10.7 Die Klasse "DateTime" 547
... 10.8 Die Klasse "TimeSpan" 555
... 10.9 Die Klasse "Array" 558
... 10.10 Objektauflistungen (Collections) ... 571
11 Multithreading ... 601
... 11.1 Prozesse, Anwendungsdomänen und Threads ... 601
... 11.2 Die Entwicklung einer Multithread-Anwendung ... 609
... 11.3 Die Synchronisation von Threads ... 626
... 11.4 Asynchrone Aufrufe ... 638
12 Arbeiten mit Dateien und Streams ... 653
... 12.1 Allgemeine Einführung ... 653
... 12.2 Dateien und Verzeichnisse ... 654
... 12.3 Die XxxStream-Klassen ... 674
... 12.4 Weitere Reader- und Writer-Klassen ... 687
13 Serialisierung und Attribute ... 711
... 13.1 Einführung in die Serialisierung ... 711
... 13.2 Attribute ... 730
14 Einführung in die Programmierung grafischer Benutzeroberflächen ... 747
... 14.1 Einführung ... 747
... 14.2 Der elementare Code einer Windows-Anwendung ... 756
... 14.3 Ereignisse grafischer Windows-Komponenten ... 771
... 14.4 Die Klasse "Control" ... 779
... 14.5 Die Klasse "Application" ... 783
15 Die Klasse "Form" 785
... 15.1 Formulare und Steuerelemente ... 785
... 15.2 Anwendungstypen ... 785
... 15.3 Die Basisklassen des Typs Form ... 786
... 15.4 Eigenschaften der Klasse "Form" ... 788
... 15.5 Ereignisse eines Formulars ... 802
... 15.6 Anwendungen mit mehreren Formularen ... 805
... 15.7 Modale Dialogfenster ... 810
... 15.8 Das Meldungsfenster ... 823
... 15.9 Das Speichern von Formulardaten in der Registry ... 827
16 Elementare Steuerelemente ... 833
... 16.1 Gemeinsame Eigenschaften, Methoden und Ereignisse ... 833
... 16.2 Schaltflächen ("Button"-Klasse) 842
... 16.3 Die "CheckBox"-Klasse (Auswahlkästchen) 849
... 16.4 Die Klasse "RadioButton" (Optionsschaltflächen) 853
... 16.5 Texteingabefelder mit der Klasse "TextBox" 859
... 16.6 Das Steuerelement "RichTextBox" 870
... 16.7 Beschriftungen mit dem Steuerelement "Label" 872
... 16.8 Das "LinkLabel"-Steuerelement ... 873
... 16.9 Die Anzeige eines Quickinfotexts ... 875
... 16.10 Das "ListBox"-Steuerelement ... 878
... 16.11 Die Klasse "CheckedListBox" 890
... 16.12 Das Kombinationslistenfeld (ComboBox) 891
17 Standarddialoge ... 895
... 17.1 Einführung in die Standarddialoge ... 895
... 17.2 Die Klasse OpenFileDialog ... 896
... 17.3 Die Klasse "SaveFileDialog" 905
... 17.4 Die Klasse "ColorDialog" 912
... 17.5 Die Klasse "FontDialog" 914
18 Menü, Symbol- und Statusleiste ... 917
... 18.1 Die Klasse "ImageList" 917
... 18.2 Erstellen eines Menüs ... 920
... 18.3 Die Symbolleiste ... 950
... 18.4 Die Statusleiste ... 963
19 Weitere Steuerelemente ... 969
... 19.1 Bildlaufleisten ... 969
... 19.2 Schieberegler mit der Klasse "TrackBar" 971
... 19.3 Das ProgressBar-Steuerelement ... 974
... 19.4 Drehfeld-Steuerelemente (UpDown-Steuerelemente) 976
... 19.5 Das Timer-Steuerelement ... 979
... 19.6 Die Klasse "ErrorProvider" 981
... 19.7 Steuerelemente für die Datums- und Zeitangabe ... 983
... 19.8 Das Panel-Steuerelement ... 987
... 19.9 Das Steuerelement "NotifyIcon" 988
... 19.10 Die "PictureBox" 991
... 19.11 Das Registerkarten-Steuerelement ... 991
... 19.12 Das TreeView-Steuerelement ... 997
... 19.13 Das ListView-Steuerelement ... 1012
... 19.14 Das "Splitter"-Steuerelement ... 1025
20 Tastatur- und Mausereignisse ... 1031
... 20.1 Die Tastaturschnittstelle ... 1031
... 20.2 Die Mausschnittstelle ... 1044
21 MDI-Anwendungen ... 1053
... 21.1 Einführung ... 1053
... 21.2 Das Hauptfenster ... 1053
... 21.3 Die Subfenster ... 1054
... 21.4 Zugriff auf die Subfenster ... 1055
... 21.5 Das Menü in einer MDI-Anwendung ... 1058
... 21.6 Beispiel einer MDI-Anwendung ... 1060
22 Die grafische Schnittstelle GDI+ 1063
... 22.1 Die Namespaces der GDI+-Schnittstelle ... 1063
... 22.2 Das Graphics-Objekt ... 1064
... 22.3 Elementare Klassen für grafische Operationen ... 1083
... 22.4 Die Schriftdarstellung ... 1104
... 22.5 Bilddateien ... 1118
23 Das Drucken (Printing) ... 1137
... 23.1 Ein einführender Überblick ... 1137
... 23.2 Der Druckauftrag "PrintDocument" 1137
... 23.3 Seiteneinstellungen mit "PageSettings" 1145
... 23.4 Der Drucker als "PrinterSettings"-Objekt ... 1147
... 23.5 Die Steuerelemente zum Drucken ... 1148
... 23.6 Drucken von Grafiken ... 1154
... 23.7 Ausdruck von mehrseitigem Text ... 1158
24 Zwischenablage/Drag & Drop ... 1167
... 24.1 Die Zwischenablage ... 1167
... 24.2 Drag & Drop-Operationen ... 1171
25 Assemblies und Verteilung ... 1177
... 25.1 Die COM-Technologie ... 1177
... 25.2 Das Konzept der Assemblies ... 1184
... 25.3 Der Inhalt einer Assembly ... 1186
... 25.4 Einzeldatei-Assemblies ... 1193
... 25.5 Mehrdateien-Assemblies ... 1195
... 25.6 Das Verteilen von Assemblies ... 1202
... 25.7 Globale Assemblies im praktischen Einsatz ... 1213
.. 25.8 Installation einer Windows-Anwendung ... 1221
... 1.1 Ein Wort zu diesem Buch ... 25
... 1.2 Das Entwicklerdilemma ... 28
... 1.3 Das Sprachenkonzept ... 30
... 1.4 Das .NET-Framework ... 34
... 1.5 Assemblies ... 38
2 Die Entwicklungsumgebung ... 41
... 2.1 Anmerkungen ... 41
... 2.2 Hard- und Softwareanforderungen ... 41
... 2.3 Die Installation ... 42
... 2.4 Die Entwicklungsumgebung von VS.NET ... 46
3 Grundlagen der Sprache C# ... 57
... 3.1 Konsolenanwendungen ... 57
... 3.2 Grundlagen der C#-Syntax ... 60
... 3.3 Variablen und Datentypen ... 68
... 3.4 Operatoren ... 94
... 3.5 Datenfelder (Arrays) 106
... 3.6 Kontrollstrukturen ... 118
... 3.7 Programmschleifen ... 129
4 Klassen und Objekte (Teil 1) ... 151
... 4.1 Einführung in die Objektorientierung ... 151
... 4.2 Die Klassendefinition ... 157
... 4.3 Die Deklaration von Objektvariablen ... 166
... 4.4 Objektmethoden ... 186
... 4.5 Objekteigenschaften ... 215
... 4.6 Konstruktoren ... 229
... 4.7 Der Destruktor ... 237
... 4.8 Assistenten der Entwicklungsumgebung ... 247
5 Klassen und Objekte (Teil 2) ... 251
... 5.1 Statische Klassenkomponenten ... 251
... 5.2 Delegate ... 268
... 5.3 Ereignisse eines Objekts ... 273
... 5.4 Strukturen - eine Sonderform der Klassen ... 282
... 5.5 Enumerationen (Aufzählungen) 293
... 5.6 Referenz- und Wertetypen ... 297
... 5.7 Namensbereiche (Namespaces) 301
6 Vererbung und Polymorphie ... 313
... 6.1 Einführung ... 313
... 6.2 Konstruktoren in Subklassen ... 319
... 6.3 Objektspezifische Methoden einer Subklasse ... 328
... 6.4 Die Methoden einer abgeleiteten Klasse ... 338
... 6.5 Ereignisse in der Vererbung ... 344
... 6.6 Hat-eine-Beziehungen ... 347
... 6.7 Typumwandlung von Objektvariablen ... 359
... 6.8 Abstrakte Klassen und Methoden ... 365
... 6.9 Polymorphie ... 368
... 6.10 Die Erweiterung der Klassenhierarchie der "CircleApplication" ... 377
7 Fortgeschrittene Techniken ... 389
... 7.1 Operatorüberladung ... 389
... 7.2 Indexer ... 403
... 7.3 Fortgeschrittene Delegat-Techniken ... 412
... 7.4 XML-Dokumentation ... 425
8 Schnittstellen ... 443
... 8.1 Einführung in die Schnittstellen ... 443
9 Fehlerbehandlung und Debugging ... 461
... 9.1 Die Behandlung von Laufzeitfehlern (Exceptions) ... 461
... 9.2 Debugging ... 485
10 Fundamentale Klassen des .NET-Frameworks ... 501
... 10.1 Allgemeines ... 501
... 10.2 Die Klasse Object ... 502
... 10.3 Die Klassen der Wertetypen ... 513
... 10.4 Die "String"-Klasse ... 522
... 10.5 Die Klasse "StringBuilder" 541
... 10.6 Die Klasse "Char" 547
... 10.7 Die Klasse "DateTime" 547
... 10.8 Die Klasse "TimeSpan" 555
... 10.9 Die Klasse "Array" 558
... 10.10 Objektauflistungen (Collections) ... 571
11 Multithreading ... 601
... 11.1 Prozesse, Anwendungsdomänen und Threads ... 601
... 11.2 Die Entwicklung einer Multithread-Anwendung ... 609
... 11.3 Die Synchronisation von Threads ... 626
... 11.4 Asynchrone Aufrufe ... 638
12 Arbeiten mit Dateien und Streams ... 653
... 12.1 Allgemeine Einführung ... 653
... 12.2 Dateien und Verzeichnisse ... 654
... 12.3 Die XxxStream-Klassen ... 674
... 12.4 Weitere Reader- und Writer-Klassen ... 687
13 Serialisierung und Attribute ... 711
... 13.1 Einführung in die Serialisierung ... 711
... 13.2 Attribute ... 730
14 Einführung in die Programmierung grafischer Benutzeroberflächen ... 747
... 14.1 Einführung ... 747
... 14.2 Der elementare Code einer Windows-Anwendung ... 756
... 14.3 Ereignisse grafischer Windows-Komponenten ... 771
... 14.4 Die Klasse "Control" ... 779
... 14.5 Die Klasse "Application" ... 783
15 Die Klasse "Form" 785
... 15.1 Formulare und Steuerelemente ... 785
... 15.2 Anwendungstypen ... 785
... 15.3 Die Basisklassen des Typs Form ... 786
... 15.4 Eigenschaften der Klasse "Form" ... 788
... 15.5 Ereignisse eines Formulars ... 802
... 15.6 Anwendungen mit mehreren Formularen ... 805
... 15.7 Modale Dialogfenster ... 810
... 15.8 Das Meldungsfenster ... 823
... 15.9 Das Speichern von Formulardaten in der Registry ... 827
16 Elementare Steuerelemente ... 833
... 16.1 Gemeinsame Eigenschaften, Methoden und Ereignisse ... 833
... 16.2 Schaltflächen ("Button"-Klasse) 842
... 16.3 Die "CheckBox"-Klasse (Auswahlkästchen) 849
... 16.4 Die Klasse "RadioButton" (Optionsschaltflächen) 853
... 16.5 Texteingabefelder mit der Klasse "TextBox" 859
... 16.6 Das Steuerelement "RichTextBox" 870
... 16.7 Beschriftungen mit dem Steuerelement "Label" 872
... 16.8 Das "LinkLabel"-Steuerelement ... 873
... 16.9 Die Anzeige eines Quickinfotexts ... 875
... 16.10 Das "ListBox"-Steuerelement ... 878
... 16.11 Die Klasse "CheckedListBox" 890
... 16.12 Das Kombinationslistenfeld (ComboBox) 891
17 Standarddialoge ... 895
... 17.1 Einführung in die Standarddialoge ... 895
... 17.2 Die Klasse OpenFileDialog ... 896
... 17.3 Die Klasse "SaveFileDialog" 905
... 17.4 Die Klasse "ColorDialog" 912
... 17.5 Die Klasse "FontDialog" 914
18 Menü, Symbol- und Statusleiste ... 917
... 18.1 Die Klasse "ImageList" 917
... 18.2 Erstellen eines Menüs ... 920
... 18.3 Die Symbolleiste ... 950
... 18.4 Die Statusleiste ... 963
19 Weitere Steuerelemente ... 969
... 19.1 Bildlaufleisten ... 969
... 19.2 Schieberegler mit der Klasse "TrackBar" 971
... 19.3 Das ProgressBar-Steuerelement ... 974
... 19.4 Drehfeld-Steuerelemente (UpDown-Steuerelemente) 976
... 19.5 Das Timer-Steuerelement ... 979
... 19.6 Die Klasse "ErrorProvider" 981
... 19.7 Steuerelemente für die Datums- und Zeitangabe ... 983
... 19.8 Das Panel-Steuerelement ... 987
... 19.9 Das Steuerelement "NotifyIcon" 988
... 19.10 Die "PictureBox" 991
... 19.11 Das Registerkarten-Steuerelement ... 991
... 19.12 Das TreeView-Steuerelement ... 997
... 19.13 Das ListView-Steuerelement ... 1012
... 19.14 Das "Splitter"-Steuerelement ... 1025
20 Tastatur- und Mausereignisse ... 1031
... 20.1 Die Tastaturschnittstelle ... 1031
... 20.2 Die Mausschnittstelle ... 1044
21 MDI-Anwendungen ... 1053
... 21.1 Einführung ... 1053
... 21.2 Das Hauptfenster ... 1053
... 21.3 Die Subfenster ... 1054
... 21.4 Zugriff auf die Subfenster ... 1055
... 21.5 Das Menü in einer MDI-Anwendung ... 1058
... 21.6 Beispiel einer MDI-Anwendung ... 1060
22 Die grafische Schnittstelle GDI+ 1063
... 22.1 Die Namespaces der GDI+-Schnittstelle ... 1063
... 22.2 Das Graphics-Objekt ... 1064
... 22.3 Elementare Klassen für grafische Operationen ... 1083
... 22.4 Die Schriftdarstellung ... 1104
... 22.5 Bilddateien ... 1118
23 Das Drucken (Printing) ... 1137
... 23.1 Ein einführender Überblick ... 1137
... 23.2 Der Druckauftrag "PrintDocument" 1137
... 23.3 Seiteneinstellungen mit "PageSettings" 1145
... 23.4 Der Drucker als "PrinterSettings"-Objekt ... 1147
... 23.5 Die Steuerelemente zum Drucken ... 1148
... 23.6 Drucken von Grafiken ... 1154
... 23.7 Ausdruck von mehrseitigem Text ... 1158
24 Zwischenablage/Drag & Drop ... 1167
... 24.1 Die Zwischenablage ... 1167
... 24.2 Drag & Drop-Operationen ... 1171
25 Assemblies und Verteilung ... 1177
... 25.1 Die COM-Technologie ... 1177
... 25.2 Das Konzept der Assemblies ... 1184
... 25.3 Der Inhalt einer Assembly ... 1186
... 25.4 Einzeldatei-Assemblies ... 1193
... 25.5 Mehrdateien-Assemblies ... 1195
... 25.6 Das Verteilen von Assemblies ... 1202
... 25.7 Globale Assemblies im praktischen Einsatz ... 1213
.. 25.8 Installation einer Windows-Anwendung ... 1221
1 Das .NET-Konzept ... 25
... 1.1 Ein Wort zu diesem Buch ... 25
... 1.2 Das Entwicklerdilemma ... 28
... 1.3 Das Sprachenkonzept ... 30
... 1.4 Das .NET-Framework ... 34
... 1.5 Assemblies ... 38
2 Die Entwicklungsumgebung ... 41
... 2.1 Anmerkungen ... 41
... 2.2 Hard- und Softwareanforderungen ... 41
... 2.3 Die Installation ... 42
... 2.4 Die Entwicklungsumgebung von VS.NET ... 46
3 Grundlagen der Sprache C# ... 57
... 3.1 Konsolenanwendungen ... 57
... 3.2 Grundlagen der C#-Syntax ... 60
... 3.3 Variablen und Datentypen ... 68
... 3.4 Operatoren ... 94
... 3.5 Datenfelder (Arrays) 106
... 3.6 Kontrollstrukturen ... 118
... 3.7 Programmschleifen ... 129
4 Klassen und Objekte (Teil 1) ... 151
... 4.1 Einführung in die Objektorientierung ... 151
... 4.2 Die Klassendefinition ... 157
... 4.3 Die Deklaration von Objektvariablen ... 166
... 4.4 Objektmethoden ... 186
... 4.5 Objekteigenschaften ... 215
... 4.6 Konstruktoren ... 229
... 4.7 Der Destruktor ... 237
... 4.8 Assistenten der Entwicklungsumgebung ... 247
5 Klassen und Objekte (Teil 2) ... 251
... 5.1 Statische Klassenkomponenten ... 251
... 5.2 Delegate ... 268
... 5.3 Ereignisse eines Objekts ... 273
... 5.4 Strukturen - eine Sonderform der Klassen ... 282
... 5.5 Enumerationen (Aufzählungen) 293
... 5.6 Referenz- und Wertetypen ... 297
... 5.7 Namensbereiche (Namespaces) 301
6 Vererbung und Polymorphie ... 313
... 6.1 Einführung ... 313
... 6.2 Konstruktoren in Subklassen ... 319
... 6.3 Objektspezifische Methoden einer Subklasse ... 328
... 6.4 Die Methoden einer abgeleiteten Klasse ... 338
... 6.5 Ereignisse in der Vererbung ... 344
... 6.6 Hat-eine-Beziehungen ... 347
... 6.7 Typumwandlung von Objektvariablen ... 359
... 6.8 Abstrakte Klassen und Methoden ... 365
... 6.9 Polymorphie ... 368
... 6.10 Die Erweiterung der Klassenhierarchie der "CircleApplication" ... 377
7 Fortgeschrittene Techniken ... 389
... 7.1 Operatorüberladung ... 389
... 7.2 Indexer ... 403
... 7.3 Fortgeschrittene Delegat-Techniken ... 412
... 7.4 XML-Dokumentation ... 425
8 Schnittstellen ... 443
... 8.1 Einführung in die Schnittstellen ... 443
9 Fehlerbehandlung und Debugging ... 461
... 9.1 Die Behandlung von Laufzeitfehlern (Exceptions) ... 461
... 9.2 Debugging ... 485
10 Fundamentale Klassen des .NET-Frameworks ... 501
... 10.1 Allgemeines ... 501
... 10.2 Die Klasse Object ... 502
... 10.3 Die Klassen der Wertetypen ... 513
... 10.4 Die "String"-Klasse ... 522
... 10.5 Die Klasse "StringBuilder" 541
... 10.6 Die Klasse "Char" 547
... 10.7 Die Klasse "DateTime" 547
... 10.8 Die Klasse "TimeSpan" 555
... 10.9 Die Klasse "Array" 558
... 10.10 Objektauflistungen (Collections) ... 571
11 Multithreading ... 601
... 11.1 Prozesse, Anwendungsdomänen und Threads ... 601
... 11.2 Die Entwicklung einer Multithread-Anwendung ... 609
... 11.3 Die Synchronisation von Threads ... 626
... 11.4 Asynchrone Aufrufe ... 638
12 Arbeiten mit Dateien und Streams ... 653
... 12.1 Allgemeine Einführung ... 653
... 12.2 Dateien und Verzeichnisse ... 654
... 12.3 Die XxxStream-Klassen ... 674
... 12.4 Weitere Reader- und Writer-Klassen ... 687
13 Serialisierung und Attribute ... 711
... 13.1 Einführung in die Serialisierung ... 711
... 13.2 Attribute ... 730
14 Einführung in die Programmierung grafischer Benutzeroberflächen ... 747
... 14.1 Einführung ... 747
... 14.2 Der elementare Code einer Windows-Anwendung ... 756
... 14.3 Ereignisse grafischer Windows-Komponenten ... 771
... 14.4 Die Klasse "Control" ... 779
... 14.5 Die Klasse "Application" ... 783
15 Die Klasse "Form" 785
... 15.1 Formulare und Steuerelemente ... 785
... 15.2 Anwendungstypen ... 785
... 15.3 Die Basisklassen des Typs Form ... 786
... 15.4 Eigenschaften der Klasse "Form" ... 788
... 15.5 Ereignisse eines Formulars ... 802
... 15.6 Anwendungen mit mehreren Formularen ... 805
... 15.7 Modale Dialogfenster ... 810
... 15.8 Das Meldungsfenster ... 823
... 15.9 Das Speichern von Formulardaten in der Registry ... 827
16 Elementare Steuerelemente ... 833
... 16.1 Gemeinsame Eigenschaften, Methoden und Ereignisse ... 833
... 16.2 Schaltflächen ("Button"-Klasse) 842
... 16.3 Die "CheckBox"-Klasse (Auswahlkästchen) 849
... 16.4 Die Klasse "RadioButton" (Optionsschaltflächen) 853
... 16.5 Texteingabefelder mit der Klasse "TextBox" 859
... 16.6 Das Steuerelement "RichTextBox" 870
... 16.7 Beschriftungen mit dem Steuerelement "Label" 872
... 16.8 Das "LinkLabel"-Steuerelement ... 873
... 16.9 Die Anzeige eines Quickinfotexts ... 875
... 16.10 Das "ListBox"-Steuerelement ... 878
... 16.11 Die Klasse "CheckedListBox" 890
... 16.12 Das Kombinationslistenfeld (ComboBox) 891
17 Standarddialoge ... 895
... 17.1 Einführung in die Standarddialoge ... 895
... 17.2 Die Klasse OpenFileDialog ... 896
... 17.3 Die Klasse "SaveFileDialog" 905
... 17.4 Die Klasse "ColorDialog" 912
... 17.5 Die Klasse "FontDialog" 914
18 Menü, Symbol- und Statusleiste ... 917
... 18.1 Die Klasse "ImageList" 917
... 18.2 Erstellen eines Menüs ... 920
... 18.3 Die Symbolleiste ... 950
... 18.4 Die Statusleiste ... 963
19 Weitere Steuerelemente ... 969
... 19.1 Bildlaufleisten ... 969
... 19.2 Schieberegler mit der Klasse "TrackBar" 971
... 19.3 Das ProgressBar-Steuerelement ... 974
... 19.4 Drehfeld-Steuerelemente (UpDown-Steuerelemente) 976
... 19.5 Das Timer-Steuerelement ... 979
... 19.6 Die Klasse "ErrorProvider" 981
... 19.7 Steuerelemente für die Datums- und Zeitangabe ... 983
... 19.8 Das Panel-Steuerelement ... 987
... 19.9 Das Steuerelement "NotifyIcon" 988
... 19.10 Die "PictureBox" 991
... 19.11 Das Registerkarten-Steuerelement ... 991
... 19.12 Das TreeView-Steuerelement ... 997
... 19.13 Das ListView-Steuerelement ... 1012
... 19.14 Das "Splitter"-Steuerelement ... 1025
20 Tastatur- und Mausereignisse ... 1031
... 20.1 Die Tastaturschnittstelle ... 1031
... 20.2 Die Mausschnittstelle ... 1044
21 MDI-Anwendungen ... 1053
... 21.1 Einführung ... 1053
... 21.2 Das Hauptfenster ... 1053
... 21.3 Die Subfenster ... 1054
... 21.4 Zugriff auf die Subfenster ... 1055
... 21.5 Das Menü in einer MDI-Anwendung ... 1058
... 21.6 Beispiel einer MDI-Anwendung ... 1060
22 Die grafische Schnittstelle GDI+ 1063
... 22.1 Die Namespaces der GDI+-Schnittstelle ... 1063
... 22.2 Das Graphics-Objekt ... 1064
... 22.3 Elementare Klassen für grafische Operationen ... 1083
... 22.4 Die Schriftdarstellung ... 1104
... 22.5 Bilddateien ... 1118
23 Das Drucken (Printing) ... 1137
... 23.1 Ein einführender Überblick ... 1137
... 23.2 Der Druckauftrag "PrintDocument" 1137
... 23.3 Seiteneinstellungen mit "PageSettings" 1145
... 23.4 Der Drucker als "PrinterSettings"-Objekt ... 1147
... 23.5 Die Steuerelemente zum Drucken ... 1148
... 23.6 Drucken von Grafiken ... 1154
... 23.7 Ausdruck von mehrseitigem Text ... 1158
24 Zwischenablage/Drag & Drop ... 1167
... 24.1 Die Zwischenablage ... 1167
... 24.2 Drag & Drop-Operationen ... 1171
25 Assemblies und Verteilung ... 1177
... 25.1 Die COM-Technologie ... 1177
... 25.2 Das Konzept der Assemblies ... 1184
... 25.3 Der Inhalt einer Assembly ... 1186
... 25.4 Einzeldatei-Assemblies ... 1193
... 25.5 Mehrdateien-Assemblies ... 1195
... 25.6 Das Verteilen von Assemblies ... 1202
... 25.7 Globale Assemblies im praktischen Einsatz ... 1213
.. 25.8 Installation einer Windows-Anwendung ... 1221
... 1.1 Ein Wort zu diesem Buch ... 25
... 1.2 Das Entwicklerdilemma ... 28
... 1.3 Das Sprachenkonzept ... 30
... 1.4 Das .NET-Framework ... 34
... 1.5 Assemblies ... 38
2 Die Entwicklungsumgebung ... 41
... 2.1 Anmerkungen ... 41
... 2.2 Hard- und Softwareanforderungen ... 41
... 2.3 Die Installation ... 42
... 2.4 Die Entwicklungsumgebung von VS.NET ... 46
3 Grundlagen der Sprache C# ... 57
... 3.1 Konsolenanwendungen ... 57
... 3.2 Grundlagen der C#-Syntax ... 60
... 3.3 Variablen und Datentypen ... 68
... 3.4 Operatoren ... 94
... 3.5 Datenfelder (Arrays) 106
... 3.6 Kontrollstrukturen ... 118
... 3.7 Programmschleifen ... 129
4 Klassen und Objekte (Teil 1) ... 151
... 4.1 Einführung in die Objektorientierung ... 151
... 4.2 Die Klassendefinition ... 157
... 4.3 Die Deklaration von Objektvariablen ... 166
... 4.4 Objektmethoden ... 186
... 4.5 Objekteigenschaften ... 215
... 4.6 Konstruktoren ... 229
... 4.7 Der Destruktor ... 237
... 4.8 Assistenten der Entwicklungsumgebung ... 247
5 Klassen und Objekte (Teil 2) ... 251
... 5.1 Statische Klassenkomponenten ... 251
... 5.2 Delegate ... 268
... 5.3 Ereignisse eines Objekts ... 273
... 5.4 Strukturen - eine Sonderform der Klassen ... 282
... 5.5 Enumerationen (Aufzählungen) 293
... 5.6 Referenz- und Wertetypen ... 297
... 5.7 Namensbereiche (Namespaces) 301
6 Vererbung und Polymorphie ... 313
... 6.1 Einführung ... 313
... 6.2 Konstruktoren in Subklassen ... 319
... 6.3 Objektspezifische Methoden einer Subklasse ... 328
... 6.4 Die Methoden einer abgeleiteten Klasse ... 338
... 6.5 Ereignisse in der Vererbung ... 344
... 6.6 Hat-eine-Beziehungen ... 347
... 6.7 Typumwandlung von Objektvariablen ... 359
... 6.8 Abstrakte Klassen und Methoden ... 365
... 6.9 Polymorphie ... 368
... 6.10 Die Erweiterung der Klassenhierarchie der "CircleApplication" ... 377
7 Fortgeschrittene Techniken ... 389
... 7.1 Operatorüberladung ... 389
... 7.2 Indexer ... 403
... 7.3 Fortgeschrittene Delegat-Techniken ... 412
... 7.4 XML-Dokumentation ... 425
8 Schnittstellen ... 443
... 8.1 Einführung in die Schnittstellen ... 443
9 Fehlerbehandlung und Debugging ... 461
... 9.1 Die Behandlung von Laufzeitfehlern (Exceptions) ... 461
... 9.2 Debugging ... 485
10 Fundamentale Klassen des .NET-Frameworks ... 501
... 10.1 Allgemeines ... 501
... 10.2 Die Klasse Object ... 502
... 10.3 Die Klassen der Wertetypen ... 513
... 10.4 Die "String"-Klasse ... 522
... 10.5 Die Klasse "StringBuilder" 541
... 10.6 Die Klasse "Char" 547
... 10.7 Die Klasse "DateTime" 547
... 10.8 Die Klasse "TimeSpan" 555
... 10.9 Die Klasse "Array" 558
... 10.10 Objektauflistungen (Collections) ... 571
11 Multithreading ... 601
... 11.1 Prozesse, Anwendungsdomänen und Threads ... 601
... 11.2 Die Entwicklung einer Multithread-Anwendung ... 609
... 11.3 Die Synchronisation von Threads ... 626
... 11.4 Asynchrone Aufrufe ... 638
12 Arbeiten mit Dateien und Streams ... 653
... 12.1 Allgemeine Einführung ... 653
... 12.2 Dateien und Verzeichnisse ... 654
... 12.3 Die XxxStream-Klassen ... 674
... 12.4 Weitere Reader- und Writer-Klassen ... 687
13 Serialisierung und Attribute ... 711
... 13.1 Einführung in die Serialisierung ... 711
... 13.2 Attribute ... 730
14 Einführung in die Programmierung grafischer Benutzeroberflächen ... 747
... 14.1 Einführung ... 747
... 14.2 Der elementare Code einer Windows-Anwendung ... 756
... 14.3 Ereignisse grafischer Windows-Komponenten ... 771
... 14.4 Die Klasse "Control" ... 779
... 14.5 Die Klasse "Application" ... 783
15 Die Klasse "Form" 785
... 15.1 Formulare und Steuerelemente ... 785
... 15.2 Anwendungstypen ... 785
... 15.3 Die Basisklassen des Typs Form ... 786
... 15.4 Eigenschaften der Klasse "Form" ... 788
... 15.5 Ereignisse eines Formulars ... 802
... 15.6 Anwendungen mit mehreren Formularen ... 805
... 15.7 Modale Dialogfenster ... 810
... 15.8 Das Meldungsfenster ... 823
... 15.9 Das Speichern von Formulardaten in der Registry ... 827
16 Elementare Steuerelemente ... 833
... 16.1 Gemeinsame Eigenschaften, Methoden und Ereignisse ... 833
... 16.2 Schaltflächen ("Button"-Klasse) 842
... 16.3 Die "CheckBox"-Klasse (Auswahlkästchen) 849
... 16.4 Die Klasse "RadioButton" (Optionsschaltflächen) 853
... 16.5 Texteingabefelder mit der Klasse "TextBox" 859
... 16.6 Das Steuerelement "RichTextBox" 870
... 16.7 Beschriftungen mit dem Steuerelement "Label" 872
... 16.8 Das "LinkLabel"-Steuerelement ... 873
... 16.9 Die Anzeige eines Quickinfotexts ... 875
... 16.10 Das "ListBox"-Steuerelement ... 878
... 16.11 Die Klasse "CheckedListBox" 890
... 16.12 Das Kombinationslistenfeld (ComboBox) 891
17 Standarddialoge ... 895
... 17.1 Einführung in die Standarddialoge ... 895
... 17.2 Die Klasse OpenFileDialog ... 896
... 17.3 Die Klasse "SaveFileDialog" 905
... 17.4 Die Klasse "ColorDialog" 912
... 17.5 Die Klasse "FontDialog" 914
18 Menü, Symbol- und Statusleiste ... 917
... 18.1 Die Klasse "ImageList" 917
... 18.2 Erstellen eines Menüs ... 920
... 18.3 Die Symbolleiste ... 950
... 18.4 Die Statusleiste ... 963
19 Weitere Steuerelemente ... 969
... 19.1 Bildlaufleisten ... 969
... 19.2 Schieberegler mit der Klasse "TrackBar" 971
... 19.3 Das ProgressBar-Steuerelement ... 974
... 19.4 Drehfeld-Steuerelemente (UpDown-Steuerelemente) 976
... 19.5 Das Timer-Steuerelement ... 979
... 19.6 Die Klasse "ErrorProvider" 981
... 19.7 Steuerelemente für die Datums- und Zeitangabe ... 983
... 19.8 Das Panel-Steuerelement ... 987
... 19.9 Das Steuerelement "NotifyIcon" 988
... 19.10 Die "PictureBox" 991
... 19.11 Das Registerkarten-Steuerelement ... 991
... 19.12 Das TreeView-Steuerelement ... 997
... 19.13 Das ListView-Steuerelement ... 1012
... 19.14 Das "Splitter"-Steuerelement ... 1025
20 Tastatur- und Mausereignisse ... 1031
... 20.1 Die Tastaturschnittstelle ... 1031
... 20.2 Die Mausschnittstelle ... 1044
21 MDI-Anwendungen ... 1053
... 21.1 Einführung ... 1053
... 21.2 Das Hauptfenster ... 1053
... 21.3 Die Subfenster ... 1054
... 21.4 Zugriff auf die Subfenster ... 1055
... 21.5 Das Menü in einer MDI-Anwendung ... 1058
... 21.6 Beispiel einer MDI-Anwendung ... 1060
22 Die grafische Schnittstelle GDI+ 1063
... 22.1 Die Namespaces der GDI+-Schnittstelle ... 1063
... 22.2 Das Graphics-Objekt ... 1064
... 22.3 Elementare Klassen für grafische Operationen ... 1083
... 22.4 Die Schriftdarstellung ... 1104
... 22.5 Bilddateien ... 1118
23 Das Drucken (Printing) ... 1137
... 23.1 Ein einführender Überblick ... 1137
... 23.2 Der Druckauftrag "PrintDocument" 1137
... 23.3 Seiteneinstellungen mit "PageSettings" 1145
... 23.4 Der Drucker als "PrinterSettings"-Objekt ... 1147
... 23.5 Die Steuerelemente zum Drucken ... 1148
... 23.6 Drucken von Grafiken ... 1154
... 23.7 Ausdruck von mehrseitigem Text ... 1158
24 Zwischenablage/Drag & Drop ... 1167
... 24.1 Die Zwischenablage ... 1167
... 24.2 Drag & Drop-Operationen ... 1171
25 Assemblies und Verteilung ... 1177
... 25.1 Die COM-Technologie ... 1177
... 25.2 Das Konzept der Assemblies ... 1184
... 25.3 Der Inhalt einer Assembly ... 1186
... 25.4 Einzeldatei-Assemblies ... 1193
... 25.5 Mehrdateien-Assemblies ... 1195
... 25.6 Das Verteilen von Assemblies ... 1202
... 25.7 Globale Assemblies im praktischen Einsatz ... 1213
.. 25.8 Installation einer Windows-Anwendung ... 1221