C# mit Visual Studio 2005/2008/2010

Dieser Kurs wird für zwei Zielgruppen angeboten:

 

 

Dabei stehen die Unterschiede und Gemeinsamkeiten der Entwicklungsumgebungen Visual Studio 2008 bzw. C++Builder, der Sprachen C++ und C# und die.NET Klassenbibliothek im Vordergrund.

 

In beiden Kursen wird C# umfassend und kompakt vorgestellt. Die Inhalte können an die Wünsche der Teilnehmer angepasst werden.

 

Diese Seminare werden von Prof. Richard Kaiser gehalten, der seit vielen Jahren Seminare für zahlreiche Firmen durchführt (Referenzen). Er ist der Verfasser der Bücher „C++ mit Microsoft Visual C++ 2008“ und „C++ mit dem Borland C++Builder“ und ist Mitglied im DIN Normierungsausschuss Informationstechnik NI-22.


 

Teil 1: C# und Visual Studio 2008 Grundlagen (ca. 3 Tage)

In diesem ersten Teil wird die Entwicklungsumgebung Visual Studio 2008 vorgestellt und gezeigt, wie man damit Windows-Programme mit einer grafischen Benutzeroberfläche erstellen kann.

1. Die Entwicklungsumgebung Visual Studio 2008

Ein einführendes Beispiel
Der Quelltexteditor und IntelliSense
Kontextmenüs und Symbolleisten
Projekte, Projektdateien und Projektoptionen

2. .NET-Komponenten für die Benutzeroberfläche

Ein- und mehrzeilige Textboxen, Label
ListBoxen und ComboBoxen
Buttons und Ereignisse
CheckBoxen, RadioButtons, GroupBox und Panel
Hauptmenüs und Kontext-Menüs
Standarddialoge

3. Elementare Datentypen und Anweisungen

Ganzzahldatentypen (int, char usw.) und der Datentyp bool
Gleitkommadatentypen: float, double und Decimal (ein präziser Gleitkommatyp)
Elementare Anweisungen (if, for, while usw.)
Die String-Klasse string

Der integrierte Debugger
Funktionen, Werte- und Referenzparameter
Die Verwendung der .NET-Bibliotheken (z.B. Math)
Arrays und die foreach-Anweisung
Strukturen (struct)
Dynamisch erzeugte Variablen (mit new) und Garbage Collection
Aufzählungstypen (enum)
Präprozessoranweisungen (Makros, Pragmas)
Ausdrücke
Namensbereiche

Teil 2: Objektorientierte Programmierung (ca. 3 Tage)

In diesem zweiten Teil wird die objektorientierte Programmierung in C# vorgestellt. Dabei stehen vor allem die Erweiterungen von C# gegenüber C++ im Vordergrund.

1. Klassen

Klassen und ihre Elemente

Konstruktoren und Destruktoren

Vererbung und Polymorphie

Die Basisklasse System.Object
Handles, new und der Garbage Collected Heap
Destruktoren und Finalisierer
Virtuelle Funktionen, new und override

Werteklassen (struct)
readonly und static Elemente
sealed Klassen und Funktionen
Eigenschaften (Properties)
Ereignisse (Events)
Parameter-Arrays
Selbst definierte Komponenten und ihre Ereignisse
Interface-Klassen
Überladene Methoden und Operatoren

Delegaten und Ereignisse
Attribute

2. Exception-Handling

3. Laufzeit-Typinformationen mit der Klasse Type

4. Generische Programmierung

5. Dokumentationskommentare und CHM-Hilfedateien


Teil 3: Elemente der .NET Klassenbibliothek (ca. 3 Tage)

In diesem dritten Teil werden einige der wichtigsten Elemente der :NET Klassenbibliothek vorgestellt.

1. Einige der wichtigsten .NET Klassen

Eigene Dialoge und die Klasse MessageBox
Formatierte Texte mit RichTextBox
Tabellen
Steuerelemente zur Eingabe und Prüfung von Daten

Zulässige Benutzereingaben sicherstellen
Fehleranzeigen mit ErrorProvider
Die Anzeige von weiteren Formularen und selbstdefinierte Dialoge
Das Validating-Ereignis
Texteingaben mit einer MaskedTextBox filtern
Tastatureingaben in KeyPress filtern

Symbolleisten und Statusanzeigen: ToolStrip und ToolStripContainer
Größenänderung von Steuerelementen zur Laufzeit

Die Eigenschaften Dock und Anchor
SplitContainer: Zur Größenanpassung von zwei Steuerelementen
TableLayoutPanel und FlowLayoutPanel

ListView und TreeView

ListView nach Spalten sortieren

MDI-Programme
NotifyIcon, ToolTip und HelpProvider

Klassen für Uhrzeit und Kalenderdatum

Die Klassen DateTime und TimeSpan
Steuerelemente zur Eingabe von Kalenderdaten und Zeiten
Timer-Klassen
Hochauflösende Zeitmessung mit der Klasse Stopwatch
Kulturspezifische Datumsformate und Kalender

Threads und ihre Synchronisation

Multithreading mit der Klasse BackgroundWorker
Multithreading mit der Klasse Thread
Kritische Abschnitte und die Synchronisation von Threads
Atomare Operationen mit Interlocked
ThreadPool

Grafiken zeichnen mit PictureBox und Graphics

Welt- und Bildschirmkoordinaten
Figuren, Farben, Stifte und Pinsel
Texte zeichnen
Drucken und Druckvorschau

Collection-Klassen

Die Collection-Klassen ArrayList und die generische Klasse List<T>
Die Interface-Klassen ICollection<T> und IList<T>
Die generischen Collection-Klassen Queue<T>, LinkedList<T> und Stack<T>
Dictionaries und die generische Interface-Klasse IDictionary
Die generischen Klassen Dictionary, SortedDictionary und SortedList
Spezielle Collection-Klassen

.NET-Klassen zur Dateibearbeitung

StreamReader und StreamWriter und FileStream
BinaryReader/Writer und StreamReader/Writer mit FileStreams
Der gleichzeitige Zugriff auf eine Datei und Record-Locking
Komprimieren und Dekomprimieren von Dateien
Einige weitere Elemente aus dem Namensbereich System::IO

XML-Dateien

Serialisierung

Serialisierung mit BinaryFormatter, SoapFormatter und XmlSerializer

Datenbank-Komponenten

Die Verbindung zu einer Datenbank herstellen
Tabellen und die Komponente DataSet
Einige Elemente der Klasse DataSet
SQL-Abfragen
Datenbanken mit mehreren Tabellen

Reguläre Ausdrücke
Internet-Komponenten

Die WebBrowser-Komponente der Toolbox
Up- und Downloads mit der Klasse WebClient
Die Klassen HTMLDocument und HTMLElement
Emails versenden mit SmtpClient
URLs, URIs und IP-Adressen und zulässige Strings
Netzwerkinformationenen und die Klasse Ping
TCP-Clients und Server mit TcpClient und TcpListener

2. Die .NET Klassenhierarchie

3. Die Erweiterung der Toolbox

 



Stand: 7.2.2010