Beispieldaten generieren mit Bogus

Wenn Sie eine Anwendung entwickeln, können Sie die meisten Funktionen nur testen, wenn die zugrunde liegende Datenbank bereits Beispieldaten enthält. Ausnahmen sind beispielsweise Formulare zum Anlegen neuer Datensätze – hier legen Sie die Beispieldatenbank selbst an. In allen anderen Fällen kann es nicht schaden, ein paar Beispieldatensätze in den jeweiligen Tabellen bereitzustellen. Oft reicht es aus, das Anlegen einiger Elemente wie Kunden oder Produkte hart im Code zu verdrahten. Wenn Sie allerdings flexibel schnell für verschiedene Datenmodelle und Anwendungen Beispieldaten benötigen, reduzieren Sie den Aufwand zum Zusammenstellen der Beispieldaten zwar auf das einmalige Schreiben des Codes. Es macht aber auch keinen Spaß, sich dann Informationen wie Teststraße, Beispielfirma und Co. aus den Fingern zu saugen. Um dies zu automatisieren und gegebenenfalls auch größere Mengen an Beispieldaten zu generieren, gibt es spezielle Tools. Eine davon heißt Bogus – und diese stellen wir in diesem Artikel im Detail vor.

Weiterlesen

Beispieldaten für ein EDM generieren

Im Artikel “Beispieldaten generieren mit Bogus” haben wir gezeigt, wie Sie grundsätzlich Beispieldaten mit der Erweiterung Bogus erzeugen. Dort haben wir allerdings noch offen gelassen, wie Sie solche Daten erzeugen, die in verknüpften Tabellen gespeichert werden sollen – also beispielsweise in zwei Tabellen namens “Kunden” und “Bestellungen”, wobei die Tabelle “Bestellungen” über ein Fremdschlüsselfeld namens “KundeID” mit der Tabelle “Kunden” verknüpft ist. Wie das gelingt, und welche Techniken noch interessant sind für das Schreiben von Beispieldaten über ein Entity Data Model direkt in die zugrunde liegenden Tabellen, beschreiben wir im vorliegenden Artikel.

Weiterlesen

Das WPF-Steuerelement CheckBox

“Ja oder Nein – das ist hier die Frage!” Oder doch vielleicht Wenn es um ein Steuerelement für Ja oder Nein, Wahr oder Falsch, 0 oder -1 geht, ist das Kontrollkästchen die erste Wahl. Oder, wie es in WPF heißt: CheckBox. Mit dem CheckBox-Steuerelement lassen sich üblicherweise zwei Zustände abbilden, die entweder durch einen Haken oder eben durch ein leeres Kästchen dargestellt werden. Ganz nebenbei bemerkt, kann man Kontrollkästchen auch noch für einen dritten Zustand verwenden, nämlich Null oder Nothing – je nach Programmiersprache. Dieser Artikel zeigt, was Sie mit dem CheckBox-Steuerelement von WPF anstellen können.

Weiterlesen

Markierung bei Fokuserhalt der TextBox

Im Artikel “Das TextBox-Steuerelement” haben wir die Grundlagen zum TextBox-Steuerelement beschrieben. Dort haben wir noch längst nicht alle Möglichkeiten behandelt, die es bei der Programmierung von TextBox-Steuerelementen unter WPF gibt. Im vorliegenden Artikel schauen wir uns an, wie Sie das Verhalten einer TextBox beim Fokuserhalt steuern können, genau genommen: Wie erreiche ich, dass die Einfügemarke an einer bestimmten Stelle positioniert wird beziehungsweise der komplette Inhalt markiert wird Und das nicht nur für den Fokuserhalt durch die Tabulator- oder Eingabetaste, sondern auch beim Anklicken mit der Maustaste.

Weiterlesen

AfterUpdate-Ereignis für TextBox-Elemente

Das TextBox-Steuerelement bietet einige Ereignisse, die sich rund um die Dateneingabe drehen. Eines davon heißt TextChanged – dieses haben wir bereits im Artikel “Das TextBox-Steuerelement” vorgestellt. Während dieses Ereignis bei Eingabe jedes einzelnen Zeichens feuert, benötigen wir auch noch ein Ereignis, das uns mitteilt, wann der Benutzer die Eingabe in ein TextBox-Element abgeschlossen hat – beispielsweise, um nach der Eingabe der Nummer eines Datensatzes in einer Datensatznavigation direkt zum gewünschten Datensatz zu springen oder auch eine Suche nach dem eingegebenen Begriff zu starten. In diesem Artikel zeigen wir, wie das gelingt.

Weiterlesen

Typumwandlung unter VB.NET

Unter VB.NET gibt es verschiedene Möglichkeiten, den Typ von Variablen umzuwandeln. Dieser Artikel erläutert den Unterschied zwischen impliziter und expliziter Typumwandlung, die Bedeutung von Option Strict, die verschiedenen Typumwandlungsfunktionen wie CBool und die Methoden der Convert-Klasse. Außerdem gibt es noch flexible Umwandlungsfunktionen wie CType, DirectCast oder TryCast – auch diese schauen wir uns genauer an.

Weiterlesen

Optionsgruppe an Boolean binden

Im Artikel “Optionsgruppen mit GroupBox und RadioButtons” haben Sie erfahren, wie Sie Optionsgruppen mit dem GroupBox-Steuerelement und RadioButton-Steuerelementen nachbilden. In diesem Artikel haben wir uns noch nicht darum gekümmert, diesen Optionsgruppen-Nachbau an Daten zu binden – sprich beispielsweise an eine Eigenschaft im Code behind-Modul des Fensters mit der Optionsgruppe. Da dies nicht so trivial ist wie das Binden von Steuerelementen wie TextBox oder anderen, widmen wir diesem Thema einen eigenen Artikel.

Weiterlesen

Von Page zu Page

Wenn Sie Pages zur Darstellung verschiedener Daten wie Übersichten, Detailansichten oder auch allgemeine Pages nutzen, die in einem Frame-Element angezeigt werden, wollen Sie gegebenenfalls auch einmal Daten von einer Seite zur nächsten schicken. Ein Anwendungsfall wäre die Auswahl eines Artikels in einer Übersichtsseite, der dann in einer Detailseite angezeigt werden soll. Oder das Öffnen einer Übersichtsseite zur Auswahl eines Eintrags, der dann in die aufrufende Seite übernommen werden soll. Dieser Artikel zeigt, wie Sie beim Navigieren im Frame-Element Informationen zwischen Page-Elementen hin- und herschicken können.

Weiterlesen

Fensterposition beim Öffnen einstellen

Nachdem ich mittlerweile mit zwei Bildschirmen arbeite (einer für die Hauptanwendungen, einer für andere Informationen wie Termine et cetera) und der Bildschirm für die Hauptanwendungen der zweite Bildschirm ist, nervt es mich etwas, dass Anwendungen beim Debuggen immer auf dem sekundären Bildschirm angezeigt werden und ich diese immer erst auf den Hauptbildschirm ziehen muss. Also schauen wir uns in diesem Artikel an, welche Möglichkeiten .NET bietet, festzulegen, auf welchem Bildschirm eine Anwendung geöffnet werden soll.

Weiterlesen