Upload
ledien
View
212
Download
0
Embed Size (px)
Citation preview
Leibniz Universität IT Services | Anja Aue
C# - Einführung in die Programmiersprache
„Windows Forms“
C# - Einführung | 26.06.12 Seite 2
Bücher und Weblinks
Bücher: Visual C# 2008; Frank Eller; Addison-Wesley
Weblinks: http://windowsclient.net/ http://msdn.microsoft.com/library/dd30h2yb http://www.microsoft.com/germany/msdn/library/net/
windowsforms/ SoArbeitenSieMitWindowsFormsInNET.mspx
C# - Einführung | 26.06.12 Seite 3
Windows Forms - Anwendungen ...
bieten eine grafische Benutzeroberfläche zur Eingabe oder Anzeige von Daten.
bieten eine Schnittstelle, über die der Benutzer mit Hilfe von Maus und Tastatur mit dem Programm kommunizieren kann.
nutzen die Bibliothek System.Windows.Forms.
C# - Einführung | 26.06.12 Seite 4
Neues Projekt anlegen
Datei – Neues Projekt. Link Neues Projekt auf der Startseite. Auswahl des Links Windows Forms-Anwendung. Eingabe des Namens in das Textfeld am unteren Rand. Mausklick auf die Schaltfläche OK.
C# - Einführung | 26.06.12 Seite 5
Anzeige in Visual Studio Express
C# - Einführung | 26.06.12 Seite 6
Elemente in einem Windows Forms - Projekt
Der Projektmappen-Explorer ist geöffnet.
Properties legen die Konfigurationseinstellungen für das gesamte Projekt fest.
Verweise zeigen alle eingebundenen Bibliotheken an.
Form1.cs enthält alle Informationen zu einer Windows Forms – Anwendung.
Programm.cs enthält den Einstiegspunkt (main) in das Programm.
C# - Einführung | 26.06.12 Seite 7
Arbeitsbereich einer Windows-Anwendung
in einem neuen Projekt: Das leere Windows Form wird in der Design-Ansicht angezeigt.
in einem bestehenden Projekt: Der Entwurf der Form wird in der Design-Ansicht angezeigt. Am unteren Rand werden die genutzten Dialogfenster eingeblendet.
C# - Einführung | 26.06.12 Seite 8
Windows Form in der Design-Ansicht
Auf der Arbeitsfläche werden Steuerelemente zur Anzeige von Informationen und / oder zur Interaktion mit dem Benutzer abgelegt.
Am oberen Rand befindet sich eine Titelleiste, die Informationen zur Form enthält. Am linken Rand wird standardmäßig das Systemmenü und am rechten Rand Schaltflächen zur Größenanpassung und zum Schließen angezeigt.
Die Form wird durch einen Rahmen begrenzt.
C# - Einführung | 26.06.12 Seite 9
Windows Form als Objekt
Eigenschaften beschreiben das Aussehen der Windows Form. Mit Hilfe des Eigenschaftenfenster können die verschiedenen Möglichkeiten eingestellt werden. Einige Eigenschaften haben Standardeinstellungen.
Methoden bilden die verschiedenen Aktionen einer Form ab. Zum .Close() schließt ein Formular.
Ereignisse beschreiben Aktionen des Benutzers mit dem Formular. Auf bestimmte Ereignisse kann reagiert werden.
C# - Einführung | 26.06.12 Seite 10
Beschreibung in den Quelldateien
Form1.Designer.cs stellt die Design-Ansicht in Code dar. In dieser Programmdatei werden die Eigenschaften der Windows Forms und der darin enthaltenen Steuerelemente beschrieben.
Form1.cs enthält die abgeleitete Klasse für die benutzerdefinierte Form. In der Datei befindet sich immer eine Methode _Load(object sender, EventArgs e) zum Starten der Form. Mit Hilfe von Ereignisprozeduren wird die Interaktion mit dem Benutzer beschrieben.
Form1.resx enthält Ressourcen wie Icons, Dialogfelder etc. für die Form. Die Datei wird vom Designer der Form geändert.
C# - Einführung | 26.06.12 Seite 11
Grundgerüst in „Form1.cs“
using System;using System.Collections.Generic;
using System.ComponentModel;using System.Data;
using System.Drawing;using System.Linq;using System.Text;
using System.Windows.Forms;
namespace WindowsFormsApplication1{ public partial class Form1 : Form{
public Form1(){ InitializeComponent();
} }
}
C# - Einführung | 26.06.12 Seite 12
Namensräume einbinden
using [Namespace];
Definierte Namensräume werden mit Hilfe des Schlüsselwortes using am Anfang eines Projektes eingebunden.
Jeder Namensraum muss einzeln eingebunden werden. Untergeordnete Namensraum werden nicht automatisch durch Angabe der Wurzel eingebunden.
Die Einbindung muss vor allen anderen Typdeklarationen erfolgen.
C# - Einführung | 26.06.12 Seite 13
Namensräume ...
fassen Klassen und Typen in verschiedenen „Schubladen“ zusammen.
sind hierarchisch geordnet. Jede Ebene der Hierarchie wird durch den Punkt visuell dargestellt.
kategorisieren Klassen. In einem Namensraum ist jeder Name einer Klasse eindeutig.
deklarieren Gültigkeitsbereiche.
C# - Einführung | 26.06.12 Seite 14
Standardmäßig eingebundene Namensräume
Namespace ErläuterungSystem Basis-Namensraum mit den Standard-Datentypen
System.Collection.Generic Datenstrukturen zum Verwalten von generischen Datenmengen
System.ComponentModel Konvertierung von Datentypen
System.Data Datenbankzugriff
System.Drawing GDI+-Basisfunktionen; Grafikprogrammierung
System.Linq Abfrage von beliebigen Datenquellen
System.Text ASCII- und Unicode-Zeichensätze
System.Windows.Form Steuerelemente etc.
C# - Einführung | 26.06.12 Seite 15
Namensraum des Projekes
namespace WindowsFormsApplication1{ }
Für jede Windows Form wird ein eigener Namensraum angelegt.
Der Namensraum beginnt mit dem Schlüssel namespace.
Der Name des Namensraums ist frei wählbar. Aber: In dem vom Designer erstellten Code sollten keine manuelle Änderungen an den gewählten Namen vorgenommen werden.
Der Namensraum wird durch die geschweiften Klammern begrenzt.
C# - Einführung | 26.06.12 Seite 16
Form-Klasse
public partial class Form1 : Form{ }
Die Definition einer Klasse beginnt mit dem Schlüsselwort class. In diesem Beispiel wird eine Klasse für eine Form angelegt. Die Klasse hat denselben Namen wie die dazugehörige Windows Form.
Die dazugehörigen Methoden und Attribute werden innerhalb der geschweiften Klammern beschrieben.
Die Klasse ist öffentlich (public). Die Klasse kann von überall gestartet werden.
Form1 : Form. Die Klasse der Form1 erbt alle Eigenschaften und Methoden von dem Objekt Form.
Die Definition der Klasse wird auf mehrere Quelldateien verteilt. Die Definition erfolgt partiel.
C# - Einführung | 26.06.12 Seite 17
Konstruktor der Klasse
Diese Methode konstruiert eine bestimmten Windows Form. In dieser Methode wird eine Initialisierungsmethode für die
Form aufgerufen, die in der Quelldatei Form1.Designer.cs definiert ist.
Sobald ein Objekt von der Klasse Form erzeugt wird, wird diese Methode aufgerufen. Wenn mit dem Designer gearbeitet wird, sollte diese Methode nicht manuell angepasst werden.
public Form1(){ InitializeComponent(); }
C# - Einführung | 26.06.12 Seite 18
Start in „programm.cs“using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows.Forms;
namespace Bildanzeige{
static class Program{
/// <summary>
/// Der Haupteinstiegspunkt für die Anwendung.
/// </summary>
[STAThread]
static void Main(){
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
}
}
}
C# - Einführung | 26.06.12 Seite 19
Application ...
ist eine Klasse aus der Bibliothek System.Windows.Form.
.EnableVisualStyles() stellt Steuerelemente in dem Stil des aktuellen Betriebssystems dar. Die Methode muss beim Start als erstes aufgerufen werden.
.SetCompatibleTextRenderingDefault() aktiviert den Kompatibilitätsmodus zum Anzeigen von Text mit Hilfe von Zeichenfunktionen (GDI+-Methoden).
.Run([Form]). Das, als Parameter übergebenen Fenster, wird geladen. Die Nachrichtenschleife für das Fenster wird gestartet. In der Schleife wird automatisch abgefragt, ob irgendwelche Ereignisse wie Mausklick ausgelöst wurden. Auf die ausgelösten Ereignisse wird entsprechend reagiert.
C# - Einführung | 26.06.12 Seite 20
Aktivierung der Form in der Design-Ansicht
Mausklick auf die Titelleiste der Form.
Der gestrichelte Rahmen und die drei weißen Quadrate (Anfasser) kennzeichnen eine aktive Form.
C# - Einführung | 26.06.12 Seite 21
Anpassung der Fenstergröße
Der Mauszeiger liegt über einen der drei weißen Quadrate.
Mit Hilfe der gedrückt gehaltenen Maustaste wird die Größe durch Ziehen verändert.
Sobald die Maustaste losgelassen wird, wird die Größe entsprechend angepasst.
C# - Einführung | 26.06.12 Seite 22
Eigenschaften der Windows Form
Darstellung in Tabellenform. In der linken Spalte werden die Namen
der Eigenschaften angezeigt. In der linken Spalte wird der
dazugehörige Wert angezeigt. Manche Zeilen zeigen Standardeinstellungen an, die vom Programmierer verändert werden können.
C# - Einführung | 26.06.12 Seite 23
Eigenschaftenfenster ...
wird mit Hilfe von Ansicht – Weitere Fenster – Eigenschaftenfenster geöffnet.
zeigt in dem Textfeld eines Kombinationsfeld das aktive Element an. In der dazugehörigen Liste werden alle Steuerelemente in der Form sowie die Form selber angezeigt.
hat Schaltflächen, um die ... Elemente in der Tabelle nach Kategorien anzuzeigen. Elemente in der Tabelle alphabetisch anzuzeigen. Eigenschaften des aktiven Elements anzuzeigen. möglichen Ereignisse anzuzeigen. Auf ein Ereignis kann
reagiert werden, muss aber nicht.
C# - Einführung | 26.06.12 Seite 24
Eigenschaften (Attribute) ...
beschreiben die Windows Form oder ein Steuerelement. sind abhängig vom Objekttyp. Ein Textfeld hat andere
Eigenschaften als eine Schaltfläche oder Windows Form. Aber ein Textfeld, welches den Vornamen anzeigt und einTextfeld, welches das Ergebnis einer Berechnung anzeigt, haben die gleichen Eigenschaften. Sie zeigen nur unterschiedliche Werte an.
werden für jedes Objekt im Speicher abgelegt.
C# - Einführung | 26.06.12 Seite 25
Name einer Windows Form
Die gewünschte Form ist aktiv und das Eigenschaftenfenster geöffnet.
In die Zeile (Name) wird der Eintrag Form1 mit Hilfe der Maus markiert.
Der markierte Eintrag wird mit Hilfe der Tastatur überschrieben. Sobald die Zeile gewechselt wird, ist der neue Eintrag
gespeichert.
C# - Einführung | 26.06.12 Seite 26
Hinweise
Identifizierung der Form. Der Name sollte eindeutig sein sowie die Funktionalität erläutern.
Maximal 80 Zeichen lang. Der Name besteht aus den Buchstaben A..Z, a..z, 0..9 und dem
Unterstrich.
C# - Einführung | 26.06.12 Seite 27
Text in der Titelleiste
Die gewünschte Windows Form ist aktiv und das Eigenschaftenfenster ist geöffnet.
Die Eigenschaft Text zeigt die aktuellen Informationen in der Titelleiste an.
Mit Hilfe der Maus kann der Eintrag markiert werden. Die Markierung kann mit Hilfe der Tastatur überschrieben
werden.
C# - Einführung | 26.06.12 Seite 28
Größe der Windows Form
Die gewünschte Windows Form ist aktiv und das Eigenschaftenfenster ist geöffnet.
Die Eigenschaft Size zeigt die aktuelle Größe der Form als Tupel [Breite]; [Höhe] an.
C# - Einführung | 26.06.12 Seite 29
Toolbox andocken
Mausklick auf den Pin in der Titelleiste der Toolbox.
Die Toolbox wird geöffnet am linken Rand angedockt.
Durch einen weiteren Klick auf den Pin wird die Anheftung aufgehoben.
C# - Einführung | 26.06.12 Seite 30
Steuerelemente (Controls) ...
können nur innerhalb einer Windows Form abgelegt werden. interagieren mit dem Benutzer. bieten die Möglichkeit Daten anzuzeigen, einzugeben und zu
überprüfen. werden zur graphischen Gestaltung der Fensteroberfläche
genutzt. werden in der Toolbox angezeigt.
C# - Einführung | 26.06.12 Seite 31
Toolbox
Anzeige in der Design-Ansicht einer Windows Form.
Die Steuerelemente werden mit Hilfe von Kategorie sortiert.
Die Steuerelement-Kategorien beginnen mit dem grauen Balken. Mit Hilfe des Pfeils am linken Rand kann eine Kategorie geöffnet oder geschlossen werden.
C# - Einführung | 26.06.12 Seite 32
… einblenden
Ansicht – Weitere Fenster – Toolbox.
Am linken Rand der Anwendung wird die Toolbox als Register angezeigt. Die Elemente der Toolbox sind ausgeblendet.
Sobald der Mauszeiger über dem Register liegt, wird der Inhalt der Toolbox angezeigt. Andernfalls wird der Inhalt ausgeblendet.
C# - Einführung | 26.06.12 Seite 33
… andocken
Mausklick auf den Pin in der Titelleiste der Toolbox.
Die Toolbox wird standardmäßig am linken Rand angedockt. Die Elemente werden angezeigt.
Nach einem weiteren Mausklick auf die Pin wird die Toolbox gelöst. Die Elemente werden ausgeblendet. Die Registerkarte wird angezeigt.
C# - Einführung | 26.06.12 Seite 34
Container ...
gruppieren Steuerelemente. legen ein Layoutraster auf der Windows Form ab. teilen eine Windows Form in verschiedene Bereiche. enthalten andere Steuerelemente.
C# - Einführung | 26.06.12 Seite 35
Gruppierung von Steuerelementen
GroupBox. Optionsschaltflächen etc. werden optisch sichtbar zusammengefasst. Für die Gruppe kann eine Bezeichnung eingeblendet werden.
PanelGroup fasst Steuerelemente wie auf einer Pinnwand zusammen. Für jede Gruppe kann eine Bildlaufleiste eingeblendet werden. Steuerelemente können gruppenweise ein- oder ausgeblendet werden.
TabControl. Registerkarten sortieren Gruppen von Steuerelementen nach Kategorien.
C# - Einführung | 26.06.12 Seite 36
Positionierung von Steuerelementen
FlowLayoutPanel ordnet die Steuerelement entsprechend der Eigenschaft FlowDirection hintereinander oder untereinander an.
TableLayoutPanel. Die Steuerelemente werden mit Hilfe einer Tabelle positioniert.
Bei einer Größenänderung der Windows Form wird die Position der Steuerelemente aktualisiert.
C# - Einführung | 26.06.12 Seite 37
Windows Form teilen
SplitContainer unterteilt die Form in zwei unterschiedliche große Bereiche.
Die Größe der Bereiche kann vom Benutzer verändert werden. Dieser Container wird für die komplexe Gestaltung von
grafischen Oberflächen genutzt.
C# - Einführung | 26.06.12 Seite 38
Steuerelemente einfügen
Einfügung an einer freien Position: Doppelklick auf ein Steuerelement (zum Beispiel TableLayoutPanel) in der Toolbox.
Einfügung an einer bestimmten Position: Mit Hilfe der gedrückt gehaltenen Maustaste wird das Steuerelement an die gewünschte Position gezogen.
C# - Einführung | 26.06.12 Seite 39
Aktives Steuerelement
Mausklick in das Steuerelement. Die Größe des Steuerelements kann in der Design-Ansicht
angepasst werden. Einige Steuerelemente
können neu positioniertwerden.
C# - Einführung | 26.06.12 Seite 40
Steuerelement löschen
<ENTF>-Taste. Die Löschung kann mit Hilfe von Bearbeiten – Rückgängig
wieder aufgehoben werden.
C# - Einführung | 26.06.12 Seite 41
Steuerelement kopieren und neu einfügen
Ein Steuerelement ist aktiv. Bearbeiten – Kopieren (<STRG>+<C>) legt das Steuerelement
in der Zwischenablage ab. Bearbeiten – Einfügen (<STRG>+<V>) fügt das kopierte
Steuerelement in einen Container ein.
C# - Einführung | 26.06.12 Seite 42
Anpassung der Größe
Mausklick in das Steuerelement. Der Mauszeiger liegt über einen der weißen Quadrate
(Anfasser). Mit Hilfe der gedrückt
gehaltenen Maustaste wirddas Steuerelement vergrößert oder verkleinert.
C# - Einführung | 26.06.12 Seite 43
Eigenschaften eines Steuerelementes
Falls das Eigenschaftenfenster nicht geöffnet ist: Ansicht – Weitere Fenster – Eigenschaftenfenster.
Unterhalb der Titelleiste wird der Name der aktiven Form oder Steuerelementes angezeigt.
Am unteren Rand wird eine Hilfe zu der ausgewählten Eigenschaft angezeigt.
Jedes Steuerelement hat spezifische Eigenschaften.
Einige Eigenschaften wie (Name), Size, etc. sind bei allen Steuerelementen vorhanden.
C# - Einführung | 26.06.12 Seite 44
Name eines Steuerelements
Das gewünschte Steuerelement wird aus dem Kombinationsfeld des Eigenschaftenfensters ausgewählt.
In die Zeile (Name) wird der Objekttyp plus einer laufenden Nummer angezeigt.
Dieser Standardname sollte markiert und mit Hilfe der Tastatur überschrieben werden.
Sobald die Zeile gewechselt wird, ist der neue Eintrag gespeichert.
C# - Einführung | 26.06.12 Seite 45
Größe eines Steuerelements
Der Name des gewünschten Steuerelements wird in dem Kombinationsfeld des Eigenschaftenfensters angezeigt.
In die Zeile Size wird die Breite und Länge, getrennt durch ein Semikolon angezeigt.
C# - Einführung | 26.06.12 Seite 46
Position eines Steuerelements
Der Name des gewünschten Steuerelements wird in dem Kombinationsfeld des Eigenschaftenfensters angezeigt.
In die Zeile Location wird die x- und y-Position der linken oberen Ecke angezeigt. Die x- und y-Position werden durch ein Semikolon getrennt.
C# - Einführung | 26.06.12 Seite 47
Steuerelemente in einem Container andocken
Mit Hilfe der Eigenschaft Dock wird das Steuerelement an eine Seite des Containers angeheftet. Die Steuerelemente werden in der Reihenfolge ihrer Einfügung angedockt.
Mehrere Steuerelemente können an ein und der selben Position angeheftet werden.
Mit Hilfe des schwarzen Pfeils am rechten Rand wird mit Hilfe der verschiedenen Schaltflächen eine Seite ausgewählt.
C# - Einführung | 26.06.12 Seite 48
Andocken an den
oberen Rand: Top. unteren Rand: Bottom. linken Rand: Left. rechten Rand: Right. None. Das Steuerelement wird in
Abhängigkeit der Eigenschaften Size und Location positioniert.
Fill. Das Steuerelement füllt den Container vollständig aus. Die Größe des Steuerelements wird automatisch der Größe des Containers angepasst.
Top
Fill
Bottom
Le
ft
Rig
ht
C# - Einführung | 26.06.12 Seite 49
TableLayoutPanel ...
nutzt eine Tabelle zur Positionierung der Steuerelemente. wird zur Gestaltung der Oberfläche genutzt. Die Anzahl der Zeilen und Spalten können vom Entwickler
eingestellt werden.
C# - Einführung | 26.06.12 Seite 50
Aufgaben eines TableLayoutPanel
Klick auf die Dreiecksschaltfläche.
In einem Menü werden die Aufgaben passend zu dem aktiven Steuerelement angezeigt.
Mit Hilfe des Links Zeilen und Spalten bearbeiten... kann die Größe der Zeilen und Spalten eingestellt werden.
C# - Einführung | 26.06.12 Seite 51
Zeilen und Spalten bearbeiten
Mit Hilfe des Kombinationsfeldes Anzeigen werden die Zeilen oder Spalten angezeigt.
C# - Einführung | 26.06.12 Seite 52
FlowLayoutPanel ...
ordnet die Steuerelement in Reihen entsprechend der Einfügereihenfolge.
positioniert die Steuerelement neben- oder untereinander in Abhängigkeit der Größe des Containers.
wird häufig genutzt, um Schaltflächen in einer Reihe zu positionieren.
C# - Einführung | 26.06.12 Seite 53
Fließrichtung
Das Eigenschaftenfenster des FlowLayoutPanels ist geöffnet. Die Eigenschaft FlowDirection legt die Richtung fest. Die Elemente können von links nach rechts oder umgekehrt
fließen. Andere Möglichkeit: Die Elemente können von oben nach unten oder umgekehrt fließen.
C# - Einführung | 26.06.12 Seite 54
Allgemeine Steuerelemente
Steuerelemente zur Eingabe von Daten. Zum Beispiel TextBox. Steuerelemente zur Auswahl von Informationen aus vielen.
Zum Beispiel ListBox, CheckBox. Steuerelemente zur Anzeige von Informationen. Zum Beispiel
Label. Steuerelemente zur Anzeige und Auswahl von bestimmten
Datenformaten. Zum Beispiel DateTimePicker.
C# - Einführung | 26.06.12 Seite 55
PictureBox
Anzeige von Bildern in den Formaten „.gif“, „.jpeg“, „.bmp“, „.wmf“ und „.png“.
C# - Einführung | 26.06.12 Seite 56
Aufgaben einer PictureBox
Klick auf die Dreiecksschaltfläche. Der Link In übergeordnetem Container andocken setzt die
Eigenschaft Dock automatisch auf den Wert Fill. Das Kombinationsfeld Größenmodus legt die Art der Anzeige
des Bildes fest. Das Bild wird automatisch der Größe der PictureBox angepasst.
Der Link Bild auswählen setzt die Eigenschaft Image.
C# - Einführung | 26.06.12 Seite 57
… in einem TableLayoutPanel
Das Eigenschaftenfenster der PictureBox ist geöffnet. Die Eigenschaft ColumnSpan hat standardmäßig den Wert 1. Die
PictureBox nutzt eine Zelle. Falls der Wert der Eigenschaft ColumnSpan auf 2 geändert wird, werden zwei Zellen in einer Zeile miteinander verbunden. Die PictureBox nutzt zur Anzeige verbundene Zellen.
Die Eigenschaft RowSpan hat standardmäßig den Wert 1. Die PictureBox nutzt eine Zelle. Falls der Wert der Eigenschaft RowSpan auf 2 geändert wird, werden zwei Zellen in einer Spalte miteinander verbunden.
C# - Einführung | 26.06.12 Seite 58
Rahmenart
Das Eigenschaftenfenster der PictureBox ist geöffnet. Die Eigenschaft BorderStyle legt das Aussehen des Rahmens
fest. Es können nur die vorgegebenen Styles genutzt werden.
C# - Einführung | 26.06.12 Seite 59
Bild auswählen
Klick auf den Assistent (Schaltfläche mit drei Punkten) der Eigenschaft Image.
Lokale Ressource: Das Bild wird nur in diesem Steuerelement angezeigt und genutzt.
Projektressourcendatei: Das Bild steht für alle Elemente des Projektes zur Verfügung.
C# - Einführung | 26.06.12 Seite 60
Lokale Ressource
Das Bild steht nur der dazugehörigen PictureBox zur Verfügung.
Eine lokale Ressource wird nicht in der Ressourcendatei des Projekts angezeigt.
Das Bild wird mit Hilfe der Schaltfläche Importieren in die PictureBox eingebunden.
Die Schaltfläche Löschen entfernt das Bild aus der PictureBox.
C# - Einführung | 26.06.12 Seite 61
Projektressourcendatei
Das Bild steht allen Elementen des Projektes zur Verfügung. Zum Beispiel sollte ein Firmenlogo in dieser Datei abgelegt
werden. Mit Hilfe der Schaltfläche Importieren wird das gewünschte Bild
in die Ressourcendatei des Projekts eingefügt. In der Ressourcendatei kann das Bild gelöscht werden.
C# - Einführung | 26.06.12 Seite 62
… in dem Projektmappen-Explorer
In dem Ordner Resources werden alle, in das Projekt eingebundene Dateien wie Bilder etc. angezeigt.
C# - Einführung | 26.06.12 Seite 63
… in den Projekt-Eigenschaften
Auswahl des Projekts im Projektmappen-Explorer.
Projekt – [Projekt]-Eigenschaften.
Ressourcen können hinzugefügt oder entfernt werden.
C# - Einführung | 26.06.12 Seite 64
CheckBox ...
bietet eine beliebige Auswahl aus verschiedenen Möglichkeiten.
ist aktiv, wenn ein Häkchen in dem Rechteck eingeblendet ist.
C# - Einführung | 26.06.12 Seite 65
Information zu dem Steuerelement
Das Eigenschaftenfenster der CheckBox ist geöffnet. Die Eigenschaft Text beschreibt kurz und knapp die angebotene
Auswahlmöglichkeit.
C# - Einführung | 26.06.12 Seite 66
Schaltflächen (Buttons) ...
lösen mit Hilfe eines Mausklicks eine bestimmte Aktion aus. reagieren auf das Ereignis Click. Die Reaktion wird vom
Entwickler programmiert. nutzen als Beschriftung häufig ein Verb. Die Beschriftung
beschreibt die angebundene Aktion.
C# - Einführung | 26.06.12 Seite 67
Informationen auf der Schaltfläche
Das Eigenschaftenfenster der Schaltfläche ist geöffnet. Die Eigenschaft Text enthält die Beschriftung der Schaltfläche. Die Eigenschaft Image kann ein Hintergrundbild zur
Verdeutlichung anbinden. ImageAlign legt die Ausrichtung fest.
C# - Einführung | 26.06.12 Seite 68
Automatische Größenanpassung
Das Eigenschaftenfenster der Schaltfläche ist geöffnet. Die Eigenschaft AutoSize hat den Wert True. Die Schaltfläche wird automatisch an die Länge der
Beschriftung angepasst.
C# - Einführung | 26.06.12 Seite 69
Standard- und Abbrechen-Schaltfläche
Die Windows Form ist aktiv und das Eigenschaftenfenster ist geöffnet.
Die Eigenschaft AcceptButton legt fest, welches Ereignis durch die <ENTER>-Taste ausgeführt wird.
Die Eigenschaft CancelButton legt fest, welches Ereignis durch die <ESC>-Taste ausgeführt wird.
Mit Hilfe des Kombinationsfeldes wird eine Schaltfläche in der Form ausgewählt.
C# - Einführung | 26.06.12 Seite 70
Das Ereignis
ist eine Aktion, die in Verbindung mit einem Objekt steht. wird durch Tastatureingaben des Benutzer, Mausbewegungen
oder das Verhalten des Objekts ausgelöst. werden mit Hilfe der Schaltfläche Ereignis im
Eigenschaftenblatt angezeigt. kann eine Ereignisprozedur auslösen, muss aber nicht.
C# - Einführung | 26.06.12 Seite 71
Reaktion auf Mausklick
Doppelklick auf die Schaltfläche. Andere Möglichkeit:
Klick auf die Schaltfläche Ereignisse im Eigenschaftenfenster.
Doppelklick in das Ereignis Click. Das entsprechende Methodengerüst wird angezeigt.
C# - Einführung | 26.06.12 Seite 72
Ereignisbehandlungsmethode (Event-Handler)
Durch ein Doppelklick auf die Schaltfläche oder Auswahl eines Ereignisses im Eigenschaftenfenster wird automatisch das Grundgerüst in Form1.cs angelegt.
Mit Hilfe dieser Methode wird auf ein bestimmtes Ereignis reagiert.
private void button1_Click(object sender, EventArgs e){ }
C# - Einführung | 26.06.12 Seite 73
Methodenkopf
Der Name der Methode setzt sich aus dem Ereignis und den Namen des auslösenden Elements zusammen.
Die Methode gibt keinen Wert zurück (void).
Die Methode ist privat (private). Sie kann nur von dem auslösenden Element (in diesem Beispiel button1) aufgerufen werden.
In Abhängigkeit des Ereignisses hat die Methode ein oder mehrere Parameter.
private void button1_Click(object sender, EventArgs e){ }
C# - Einführung | 26.06.12 Seite 74
Parameterliste des Ereignisses „Mausklick“
Zusammenfassung von Parametern mit Hilfe der runden Klammern.
Die Parameter werden durch ein Kommata getrennt.
Mit Hilfe des Parameters sender kann das auslösende Element ermittelt werden.
Der Parameter e enthält ein Verweis auf die Basisklasse der Ereignisse.
private void button1_Click(object sender, EventArgs e){ }
C# - Einführung | 26.06.12 Seite 75
Form schließen
Die Methode .Close schließt eine Windows Form und gibt den belegten Speicher wieder frei.
this ist ein Synonym für eine Referenz auf das aktuelle Objekt. Das Schlüsselwort verweist auf die Windows Form und nicht auf den Auslöser des Events.
private void cmdClose_Click(object sender, EventArgs e)
{ this.Close();}
C# - Einführung | 26.06.12 Seite 76
Ist die Checkbox aktiviert?
private void chkStretch_CheckedChanged( object sender, EventArgs e){ if (chkStretch.Checked) { BildBox.SizeMode = PictureBoxSizeMode.StretchImage; } else { BildBox.SizeMode = PictureBoxSizeMode.Normal; } }
C# - Einführung | 26.06.12 Seite 77
Änderungen an einer Textbox
txtNachrichtKopf.Clear();
System.Drawing.Font currentFont = txtNachrichtKopf.SelectionFont;
txtNachrichtKopf.SelectionFont = new Font( currentFont.FontFamily, currentFont.Size,
FontStyle.Bold);
txtNachrichtKopf.AppendText(nachrichtenKopf);
C# - Einführung | 26.06.12 Seite 78
Listbox mit Hilfe eines Arrays füllen
private void Notiz_Eingabe_Load(object sender, EventArgs e){
string[] betreff = new String[]{"Information", "Anfrage", "Termin", "Rückruf", "Sonstiges"};
chkBetreff.Items.AddRange(betreff);
}
Die Eigenschaft .Items enthält alle Elemente, die in einer Listbox, CheckedListBox oder ComboBox angezeigt werden.
Mit Hilfe der Methode .AddRange wird eine Array oder ein Feld von Objekten der ListBox hinzugefügt.
Mit Hilfe der Methode .Add wird ein Listenelement hinzugefügt.
C# - Einführung | 26.06.12 Seite 79
Liste des Kombinationsfeldes füllen
private void Notiz_Eingabe_Load(object sender, EventArgs e){
Hashtable Ansprechpartner = new Hashtable(); Ansprechpartner.Add("100", "Herr Artur Müller");
Ansprechpartner.Add("200", "Frau Ida Meyer"); Ansprechpartner.Add("300", "Herr Anton Mayer");
Ansprechpartner.Add("400", "Frau Ella Scholz");
cboPersonen.DataSource = new BindingSource(Ansprechpartner, null);
cboPersonen.DisplayMember = "Value"; cboPersonen.ValueMember = "Key";
}
C# - Einführung | 26.06.12 Seite 80
BindingSource ...
kapselt die Datenquelle für eine Windows Form. kapselt die Hashtabelle. Die gebundene Spalte der Datenquelle
wird nicht angegeben.
C# - Einführung | 26.06.12 Seite 81
Bindung an ein Kombinationsfeld
.DisplayMember. Was wird in der Liste des Kombinationsfeldes angezeigt. In diesem Beispiel werden die Werte der Hashtabelle angezeigt.
.ValueMember. Welche Werte werden gespeichert? In diesem Beispiel werden die Schlüssel der Hashtabelle genutzt.
C# - Einführung | 26.06.12 Seite 82
Standarddialoge ...
zeigen Meldungen für den Benutzer an (MessageBox).
ermöglichen den Benutzer eine Auswahl zum Beispiel von Dateien vorzunehmen oder Einstellungen zu ändern.
befinden sich in der Kategorie Dialogfelder und Drucken der Toolbox.
C# - Einführung | 26.06.12 Seite 83
Vorhandene Dialoge ...
in DialogfelderColorDialog Auswahl einer Farbe, zum Beispiel für den Hintergrund
FolderBrowserDialog Auswahl eines Verzeichnisses
FontDialog Auswahl der Schriftart und Größe
OpenFileDialog Öffnen-Dialog
SaveFileDialog Speichern-Dialog
in DruckenPageSetupDialog Seite einrichten
PrintDialog Druck-Dialog
PrintPreviewDialog Druckvorschau
C# - Einführung | 26.06.12 Seite 84
Dialoge in eine Form einfügen
Doppelklick auf das passende Symbol zum Dialog in der Toolbox.
Der Dialog wird nicht sichtbar auf der Windows Form abgelegt. Alle, in einer Form vorhandenen Dialoge, werden am unteren Rand angezeigt.
C# - Einführung | 26.06.12 Seite 85
Eigenschaften ...
werden im Eigenschaftenfenster angezeigt. sind abhängig von der Funktionalität des Dialogs.
C# - Einführung | 26.06.12 Seite 86
Beispiel: Öffnen-Dialog
C# - Einführung | 26.06.12 Seite 87
Anzeigen eines Dialogs
private void cmdShow_Click(object sender, EventArgs e){ dialog_BildOeffnen.ShowDialog();}
ShowDialog() zeigt ein Fenster modal an. Das geöffnete Fenster liegt im Vordergrund. Bevor ein modales Fenster nicht geschlossen ist, können keine anderen Fenster aktiviert werden.
Show() zeigt ein Fenster nicht modal an. Das geöffnete Fenster liegt im Vordergrund. Ein Wechsel zwischen geöffneten Fenstern ist möglich.
C# - Einführung | 26.06.12 Seite 88
Welche Schaltfläche wurde gedrückt?
if (dialog_BildOeffnen.ShowDialog() == DialogResult.OK){ }
DialogResult enthält Informationen zu den, in dem Dialog ausgeführten Aktionen.
Der Öffnen-Dialog gibt darüber Auskunft, ob der Benutzer die Schaltfläche OK (.OK) oder Abbrechen (.Cancel) gedrückt hat.
C# - Einführung | 26.06.12 Seite 89
Welche Datei wurde gewählt?
if (dialog_BildOeffnen.ShowDialog() == DialogResult.OK){ BildBox.Load(dialog_BildOeffnen.FileName); }
Die Eigenschaft .FileName hat als Wert den gewählten Dateinamen und den vollständigen Pfad zu dieser Datei.
Mit Hilfe der Methode Load() wird die gewählte Datei in eine PictureBox geladen und angezeigt.
C# - Einführung | 26.06.12 Seite 90
Welche Farbe wurde gewählt
if (dialog_AuswahlFarbe.ShowDialog() == DialogResult.OK){ BildBox.BackColor = dialog_AuswahlFarbe.Color;}
ColorDialog besitzt die Eigenschaft .Color. In dieser Eigenschaft wird die gewählte Farbe gespeichert.
Die gewählte Farbe wird in diesem Beispiel als Hintergrundfarbe für eine PictureBox genutzt.