Das ListBox-Steuerelement: Grundlagen

Wer unter Access/VBA gern das Listenfeld als Steuerelement genutzt hat, wird unter WPF ein ähnliches Steuerelement verwenden wollen. Ein einfach aufgebautes Steuerelement zur Anzeige von Texten in Listenform ist das ListBox-Steuerelement. Es lässt sich sehr leicht definieren und mit Daten füllen, sei es vordefiniert per XAML oder auch zur Laufzeit per Code. Dieser Artikel zeigt die Grundlagen zur Definition und Programmierung des ListBox-Steuerelements. Dabei erfahren Sie, wie Sie es mit einfachen Texten füllen, Einträge selektieren, die Selektion auslesen und auf Ereignisse wie die geänderte Auswahl oder einen Doppelklick reagieren können.

Weiterlesen

Datumsfunktionen

Ohne Datumsfunktionen kommt man in keiner Programmiersprache aus. Das ist unter C# natürlich nicht anders. Wer allerdings von Access/VBA kommt, muss sich ein wenig umstellen: Einzelne Funktionen wie Date() oder Time(), mit denen Sie beispielsweise das aktuelle Datum oder die aktuelle Uhrzeit ermittelt haben, suchen Sie hier vergeblich. Stattdessen nutzen Sie verschiedene Eigenschaften des Objekts DateTime. Der vorliegende Artikel zeigt die wichtigsten Elemente der C#-Programmiersprache zum Thema Datum und erläutert, wie das Datum hier im Hintergrund behandelt wird.

Weiterlesen

Bisher haben wir das DataGrid immer in einer Minimalausführung verwendet – also mit einfachen Text-Steuerelementen. Das sieht nicht nur langweilig aus, sondern es nutzt auch die Fähigkeiten des DataGrid-Steuerelements nicht annähernd aus. Also schauen wir uns in diesem Artikel an, welche Möglichkeiten der Formatierung des DataGrid-Steuerelements wie bisher in unserer Lösung “Bestellverwaltung” eingesetzt haben.

Weiterlesen

EDM: 1:n-Beziehungen mit DataGrid

Unter Access haben wir 1:n-Beziehungen einfach in einem Haupt- und einem Unterformular abgebildet, wobei wir beiden einfach die Datenquellen und gebundenen Steuerelemente zugewiesen haben – den Rest hat Access automatisch erledigt. Unter C# und WPF ist das ein wenig mehr Arbeit, aber nach der Lektüre dieses Artikels haben Sie das Wissen, das für die Anzeige zweier per 1:n-Beziehung verknüpfter Tabellen in einem Fenster beziehungsweise einer Seite und einem DataGrid als Unterformular-Ersatz nötig ist.

Weiterlesen

EDM: Ausnahmen beim Speichern behandeln

Die Validierung bei der Eingabe von Daten ist eines der wichtigsten Themen bei der Erstellung benutzerfreundlicher Anwendungen. In diesem ersten Artikel zu diesem Thema wollen wir uns darauf beschränken, solche Eingabefehler abzufangen, welche durch die Restriktionen im Datenmodell und entsprechende Fehleingaben entstehen. Das sind beispielsweise Fehler, die auftreten, weil der Benutzer keinen Wert in ein Feld eingibt, dass nicht leer sein darf oder der Datentyp des Feldes nicht mit dem eingegebenen Wert korrespondiert.

Weiterlesen

Mit Zeichenketten arbeiten

Schon VBA bietet eine Menge Funktionen für den Umgang mit Zeichenketten. Unter C# – wer hätte das gedacht – setzt Microsoft noch Einiges drauf. Einer der wichtigsten Unterschiede ist, dass eine Variable des Typs String nun nicht mehr einfach nur eine Zeichenkette aufnehmen kann, sondern sogar auf ein Objekt verweist, das den Text enthält und Methoden und Eigenschaften aufweist. Dieser Artikel liefert eine Einführung in den Umgang mit Zeichenketten unter C#.

Weiterlesen

Von VBA zu C#: Bedingungen

Unter Access-VBA haben Sie als Bedingungen die Befehlsstrukturen If…Then und deren Varianten sowie Select Case kennen gelernt. Außerdem gibt es noch Funktionen, mit denen sich bestimmte Werte in Abhängigkeit des Wertes eines Parameters zurückgeben lassen – zum Beispiel IIf oder Choose. Unter C# sieht dies etwas anders aus, vor allem wegen der Strukturierung mit geschweiften Klammern und des fehlenden End-Schlüsselwortes. Dieser Beitrag stellt die Pendants zu den VBA-Bedingungen vor.

Weiterlesen

Die Console-Klasse

Im Gegensatz zu VBA können Sie mit den .NET-Programmiersprachen wesentlich komfortabler auf die Eingabeaufforderung zugreifen – und zwar über die Console-Klasse des System-Namespaces. Dieses bietet nicht nur die Möglichkeit, Texte auszugeben, sondern auch solche zum Einlesen von Benutzereingaben. Außerdem können Sie die Eingabeaufforderung damit nach Ihren eigenen Wünschen formatieren. Dieser Artikel beschreibt die Verwendung der Console-Klasse.

Weiterlesen