| |

VB.NET - Ein- und UmsteigerRe: Bei Eingabe in DGV gültigkeit Prüfen | |  | Autor: jan61983 | Datum: 13.12.09 03:42 |
| Ich löse derartige Probleme anders. Das kommt aber darauf an, ob einem das gefällt und was man damit vor hat.
Meine Vorschlag wäre das DGV an eine Datenquelle zu binden und das DGV auf ReadOnly zu stellen. Nun noch im DGV FullRowSelect einstellen und AllowUserAddRows = False, schon kanns losgehen.
Nun neben dem DGV Button einfügen für Neu, Bearbeiten und Löschen und das Event bei einem Doppelklick auf das DGV bearbeiten.
Eine weitere Form einfügen und für jede Spalte im DGV eine Steuerelement hinzufügen. Bspw. für Text eine ComboBox oder Textfeld, für Integer eine Textfeld oder ein NumericUpDown, für Datum ein Textfeld oder den DateTimePicker,... (viele Wege führen nach Rom)
In der zweiten Form kannst du dir dann alle Daten anzeigen lassen bearbeiten. Und das wichtigste, bei einem Klick auf den OK-Button kannst du deine Eingaben validieren (ist eventuelle der gleiche Eintrag schon vorhanden, ist Email eine gültige Mailadresse, ist das Enddatum später als das Anfangsdatum, ist Peter wirklich größer als Anette, und und und
Anschließend kannst du in die Datenquelle die Änderungen übernehmen und das DGV aktualisieren.
Wenn du mit gebundenen Steuerelementen arbeitest gehts noch einfacher. Die Änderungen werden direkt übernommen oder lassen sich bei einem Abbruch rückgängig machen.
Als Datenquelle kannst du vereinfacht ein typisiertes DataSet verwenden. Das arbeiten mit DataSets ist sehr gewöhnungsbedürftig aber für Anfänger sehr gut geeignet. Und mit der zusatz typisiert geht fast alles von allein.
Ich bin jedoch ein Fan von eigenen Klassen. Beim setzen der Eigenschaften kannst du die Validierung von der Klasse übernehmen lassen und hältst den Code in der zweiten Form dadurch ungemein kleiner und übersichtlicher. Außerdem hast du in der Klasse viel viel mehr Freiheiten und kannst dein Tool leichter modifizieren.
Für ein einfaches Abspeichern der Daten kannst du dann beide (DataSet und Klasse) serialisieren und ggf. deserialisieren.
Es gibt zum DGV, DataSets, typisierten DataSets, zum erstellen eigender Klassen und das Binden von Steuerelementen an Klassen und anderer Quellen viel Literatur im Netz. Es gibt sehr viel kostenloses dazu. Wenn du googlst wirst du viel finden. Wenn du dich da etwas eingelesen hast geht das fast von allein. Nimm dir aber Zeit für die Suche und das Lesen, denn das Thema ist komplex und bedarf viel Zeit.
Ich habe vor gut einem Jahr ähnliche Fragen hier gestellt als ich mit der Thematik und VB.NET begann. Meine Recherche hingegen hat mich da wirklich weiter gebracht. |  |
 | Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
  |
|
TOP! Unser Nr. 1 
Neu! sevDataGrid 3.0
Mehrspaltige Listen, mit oder ohne DB-Anbindung. Autom. Sortierung, Editieren von Spalteninhalten oder das interaktive Hinzufügen von Datenzeilen sind ebenso möglich wie das Erstellen eines Web-Reports. Weitere InfosTipp des Monats Oktober 2025 Matthias KozlowskiUmlaute konvertierenErsetzt die Umlaute in einer Zeichenkette durch die entsprechenden Doppelbuchstaben (aus ä wird ae, usw.) Access-Tools Vol.1 
Über 400 MByte Inhalt
Mehr als 250 Access-Beispiele, 25 Add-Ins und ActiveX-Komponenten, 16 VB-Projekt inkl. Source, mehr als 320 Tipps & Tricks für Access und VB
Nur 24,95 EURWeitere Infos
|
|
|
Copyright ©2000-2025 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|