Fenster mit einfachen Tabellendaten

Unter Access haben Sie mit wenigen Mausklicks die Daten einer Tabelle in einem Formular angezeigt – Datenherkunft festlegen, Felder aus der Feldliste in das Formular zeihen, fertig war das Formular. Unter WPF ist es erstens etwas aufwendiger, und zweitens gibt es verschiedene Möglichkeiten, dies zu realisieren. In diesem Artikel schauen wir uns die einfachste Methode an, die Daten einer einfachen Tabelle in einem Fenster anzuzeigen, in den Datensätzen zu navigieren und Änderungen zu speichern.

Weiterlesen

Datenzugriff mit ADO.NET, Teil 2

Im ersten Teil unserer Artikelreihe zum Thema ADO.NET haben wir uns angesehen, wie Sie mit dem DataReader-Objekt auf die Daten einer Tabelle zugreifen und wie Sie mit dem Command-Objekt Aktionsabfragen durchführen können. Im vorliegenden Teil sehen wir uns an, wie Sie mit dem DataAdapter-Objekt auf die Daten einer Datenbank zugreifen und das DataSet- und das DataTable-Objekt einsetzen, um verbindungslos mit den Daten einer Datenbank zu arbeiten.

Weiterlesen

Anwendungskonfigurationsdateien

Während Sie etwa in einer Access-Anwendung leicht die Konfigurationsdaten in einer eigens dafür vorgesehenen Tabelle speichern können oder in einer benutzerdefinierten Text- oder XML-Datei, gibt es unter C# andere Möglichkeiten. Wie für alles finden Sie unter C# auch für das Verwalten von Konfigurationsdaten einen eigenen Namespace – in diesem Fall heißt dieser ConfigurationManager. Dieser Artikel zeigt, wie Sie damit Daten für Desktop-Anwendungen speichern und wieder abrufen können.

Weiterlesen

Delegates

Delegates sind Typen, denen Sie eine Methode zuweisen, die sie dann über das Delegate ausführen können. Ein Delegate legt dabei nur fest, welchen Rückgabewert und welche Parameter die zu verwendende Methode nutzt – Sie können dem Delegate zur Laufzeit dann beliebige Methoden zuweisen, die dieser Signatur entsprechen. Delegates benötigen Sie aber auch, wenn Sie Klassen mit benutzerdefinierten Ereignissen programmieren möchten. In diesem Fall nutzen Sie ein Delegate, um die beim Eintreten des Ereignisses auszuführende Methode festzulegen.

Weiterlesen

Von VBA zu C#: Dateidialoge

Unter VBA musste man schon einigen Zusatzcode inklusive Api-Deklarationen zu seinem Projekt hinzufügen, um Dialoge etwa zum Auswählen einer zu öffnenden Datei, eines Verzeichnisses oder zur Angabe eines Dateinamens zum Speichern anzuzeigen. Unter .NET gibt es dazu natürlich eine vorgefertigte Klasse, die alle notwendigen Funktionen liefert. Der vorliegende Artikel zeigt, wie Sie diese Dialoge anzeigen und die damit ermittelten Daten nutzen können.

Weiterlesen

Von VBA zu C#: Objekt-Ereignisse

Nicht nur Fenster und Steuerelemente, sondern auch Objekte, die nicht Bestandteil der Benutzeroberfläche sind, können Ereignisse auslösen. Schließlich können Sie auch selbst Klassen programmieren und diese mit Ereignishandlern versehen. Wie Sie unter C# mit diesen Möglichkeiten umgehen, zeigt dieser Artikel. Dabei schauen wir uns zunächst an, wie Sie Ereignisse für Objekte auf Basis etwa der OpenFileDialog-Klasse implementieren und erstellen dann eine benutzerdefinierte Klasse mit einem Ereignishandler.

Weiterlesen

Von VBA zu C#: Steuerelement-Ereignisse

Wer unter VBA Ereignisprozeduren für Formulare, Berichte oder Steuerelemente erstellen wollte, hatte es leicht: Einfach in der Ereigniseigenschaft den Wert [Ereignisprozedur] auswählen, auf die Schaltfläche mit den drei Punkten klicken und schon konnte man die vorgefertigte Prozedur mit Anweisungen füllen. In manchen Fällen war das Implementieren von Ereignissen schon komplizierter, aber immer noch schnell machbar. Unter C# bekommt man dies auch meist mit wenigen Klicks hin, aber die notwendigen Handgriffe unterscheiden sich doch deutlich von denen unter VBA. Dieser Artikel zeigt, wie Sie gängige Varianten von Ereignisprozeduren anlegen.

Weiterlesen

Von VBA zu C#: Das Static-Schlüsselwort

Was bedeutet eigentlich das Schlüsselwort “static”, mit dem Sie sowohl Typen/Klassen also auch die Elemente einer Klasse wie Methoden oder Eigenschaften kennzeichnen können – und was ist bei der Erstellung und Nutzung von Typen und Elementen mit diesem Schlüsselwort zu beachten? Dies schauen wir uns im vorliegenden Artikel an und liefern einige Beispiele, welche die Regeln verdeutlichen.

Weiterlesen

Experimentieren mit der Konsole

Wenn Sie in die Programmierung mit C# einsteigen, werden Sie – genau wie wir in unseren Beiträgen – eine Menge ausprobieren wollen. Als Umsteiger von VBA haben Sie es da schwer: Unter VBA haben Sie zum Ausprobieren von Code einfach eine neue Prozedur in einem Standardmodul angelegt und diese dann mit F5 gestartet. In Visual Studio verwenden Sie zum Testen von Code zum Beispiel eine Konsolenanwendung. Verschiedene Prozeduren schreiben und mal eben aufrufen wie im VBA-Editor gelingt dort allerdings nicht. Wir zeigen Ihnen, wie Sie dennoch einigermaßen komfortabel experimentieren können.

Weiterlesen

Objektorientierte Programmierung: Vererbung I

Eines der wichtigsten Merkmale der objektorientierten Programmierung ist die Vererbung. Dank der Vererbung kann man für ein Objekt eine Basisklasse erstellen, die grundlegende Eigenschaften und Methoden für dieses Objekt bereitstellt. Benötigen Sie nun ein weiteres Objekt, das auf dem ersten Objekt aufbaut, aber weitere oder geänderte Eigenschaften und Methoden enthält, müssten Sie ohne Vererbung die gleiche Klasse nochmal erstellen und nach ihren Wünschen anpassen. Dank Vererbung brauchen Sie in der Klasse für das neue Objekt jedoch nur die Erweiterungen und Änderungen zu definieren. Den Rest verwenden Sie von der ersten Klasse – und brauchen eine Menge Code nur an einer Stelle zu warten.

Weiterlesen