Datenbankprogrammierung

SelectedIndex

Die Eigenschaft SelectedIndex des ListBox-Steuerelements gibt den Index des in der Liste ausgewählten Elements zurück. Falls in der Liste kein Element ausgewählt ist, ist dieser Wert -1. In der for each-Schleife durchlaufen Sie die komplette Kontakt-Liste, wobei Sie für jedes Objekt prüfen, ob die vom Benutzer angegebene Zeichenfolge in dessen E-Mail-Adresse enthalten ist (k->Email-> ToLower()-> Contains(textBox3-> Text-> ToLower())).

Wegen der Konvertierung in Kleinbuchstaben mit ToLower() ignoriert die Suche Groß- und Kleinschreibung. Bei Übereinstimmung zeigen Sie die Daten des gefundenen Kontakt-Objekts im Formular an.

Der Zugriff erfolgt mit der Schleifenvariablen k wie bei k->Vorname. Damit verlässt das Programm die for each-Schleife. Notwendig ist es allerdings noch, die Indexvariable mit der Anweisung dsindex = meineKontakte-> IndexOf(k); zu aktualisieren, damit der Benutzer gegebenenfalls, vom gefundenen Kontakt ausgehend, weiter- oder zurückblättern kann. Mit den beiden anderen Kriterien verfahren Sie in der gleichen Weise.

Setzen Sie im Ausdruck k-> Email-> ToLower() für die Eigenschaft Email die Eigenschaften Vorname bzw. Name ein. Sonst bleibt der Code gleich.

Kontakte löschen/hinzufügen

Einen neuen Kontakt, dessen Daten der Anwender in die Textfelder eingegeben hat, speichert er über die Schaltfläche Neu. Der Knopf CL bereinigt die Anzeige. Vorher prüfen Sie allerdings in der Click-Ereignismethode für diese Schaltfläche, ob die angegebene Mail-Adresse nicht bereits existiert. Falls ja, geben Sie eine entsprechende Meldung aus. Ist die Eingabe soweit in Ordnung, fügen Sie den neuen Kontakt zunächst mit der Add()-Methode der generischen Liste hinzu.

Natürlich lassen sich zuvor noch weitere Voraussetzungen prüfen, ob zum Beispiel alle oder zumindest das Feld für die E-Mail-Adresse ausgefüllt sind. Anschließend fügen Sie einen neuen Datensatz mit den entsprechenden Werten in die SQL-Datenbank ein. Dazu verwenden Sie das gleiche SqlCommand-Objekt, das Sie bereits in der Methode Form1_Load() über den Aufruf connection-> CreateCommand() erhalten haben.

Die allgemeine Syntax des erforderlichen Befehls lautet: INSERT INTO (,., , ...) VALUES (,., , ...) Die erste Klammer enthält die Spaltennamen, die zweite Klammer die zugehörigen Werte. Im Beispiel übernehmen Sie diese aus den Feldern des Formulars. Das oberste TextBox-Steuerelement für den Vornamen ist im Beispiel textBox4, das für den Nachnamen textBox1 und das für die E-Mail-Adresse textBox2.

command->CommandText =
"INSERT INTO Kontakte (Vorname,
Nachname, [E-Mail]) VALUES (,"
+ textBox4->Text + "', ," + textBox1->Text + "', ," + textBox2->Text + "')";

Mehr zum Thema

HTML 5
Webgestaltung

Google Web Designer ist spezialisiert auf HTML5. Ein Vorteil dieses Standards ist das einfache Einbinden von Videos mit dem Element video. Wir zeigen…
Wir verraten, wie Sie Fritzboxen und andere Router vor Hackern schützen.
Fritzbox, Asus, Belkin und Co.

Fritzbox, Asus, Belkin oder DLink - die Liste der geknackten Router ist lang. Hacker stahlen Passwörter oder NAS-Daten. So machen Sie Ihren Router…
Wir führen Sie zur eigenen Windows-App - unserem PC-Magazin-RSS-Feed.
C# und XAML

Wir zeigen, wie Sie Windows 8.1 Apps selbst programmieren können. Lernen Sie das App erstellen an Hand unseres Beispiels: dem RSS-Feed von PC…
Windows Tipps & Tricks: Benutzerrechte unter Windows 8.1
Programme richtig installieren

Wir zeigen Ihnen, wie Sie sich unter Windows 8.1 alle Benutzerrechte verschaffen und Programme richtig installieren.
Windows 8: Starbildschirm
Microsoft Project Siena

Erstellen Sie sich selbst eine App für Windows 8, die auf alle Funktionen Ihres Tablets zugreifen kann, inklusive Kamera, Mikrofon und Lautsprecher.…