Laden...

Dataset für andere Klassen und Forms zugänglich machen

Erstellt von Franknstein vor 20 Jahren Letzter Beitrag vor 20 Jahren 4.070 Views
F
Franknstein Themenstarter:in
529 Beiträge seit 2003
vor 20 Jahren
Dataset für andere Klassen und Forms zugänglich machen

Ich habe drei Forms, eine Benutzeroberfläche(1), eine welche die anderen verwaltet(2) und eine die alle Systemzugriffe(3)(Dateizugriff....) abwickelt!

Die Form 2 prüft die anderen Forms immer auf aktualisierung, und aktualisert diese auch machesmal. In der Form 2 existiert ein Dataset, weleches von Form3 aus mit Daten gefüllt werden soll! Wie realisiere ich das?

Besuchen sie das VisualC++ - Forum

C
980 Beiträge seit 2003
vor 20 Jahren

Grundsatzstrategie: Versuche, das Frontend (die Forms) mit der Logik und den Daten zu trennen. Damit lösen sich solche Probleme meisten praktisch von alleine.

F
Franknstein Themenstarter:in
529 Beiträge seit 2003
vor 20 Jahren

Das mache ich doch, was du meinst!
Mich interressiert, wenn ich im Fontend ein DataGrid z.B. habe und es von der Logik aus befüllen will, wie das geht.

Besuchen sie das VisualC++ - Forum

A
12 Beiträge seit 2003
vor 20 Jahren

Hallo,

also es gibt die Möglichkeit, das du eine Komponente verwendest, in dieser Komponente hast du deine Verbindung und dein DataAdapter drin aus dem DataAdapter erstellst du dann dein DataSet.

Danach schreibst du in der Komponente eine Methode oder 2 oder drei 😉
ich mache normalerweise 2 eins zum Füllen und eines zum Aktualisieren.


public void FillDataSet(dsDataSet dSet)
{
oleDbDataAdapter1.Fill(dSet);
}

public void UpdateDataSet(dsDataSet dSet)
{
oleDbDataAdapter1.Update(dSet);
}


jetzt kannst du auf diese Komponente zugreifen, indem du den Namen aufrufst. Ich mache normalerweise alle Komponenten für die Datenbank in ein verzeichnis namens sql. Jetzt hole das DataSet, das findest du in der ToolBox unter Daten und ziehst das DataSet auf deine Form.
Danach kommt ein Wizard der wissen will welches DataSet du verwenden möchtest, somit wählst du das DataSet das du zuvor erstellt hast.

Jetzt fehlt der Aufruf


sql.MeineKomponente sqlKomp = new sql.MeineKomponente();
sqlKomp.FillDataSet(dsDataSet1);

somit kannst du auf jeder Form die du willst, deine Daten holen und hast den SQL Code nur an einer stelle nähmlich in dieser Komponente.

Hoffe hab das jetzt verständlich geschrieben bg

Grüsschen Andreas