C# Meaagebox aus (unter)klasse

newdragon

Cadet 2nd Year
Registriert
März 2011
Beiträge
17
Hallo,
ich habe eine From die eine klasse "Daten" anspricht um verschiedene dinge abzuarbeiten. jetzt möcht aus der klasse "Daten" eine Messagebox aufrufen wie funktioniert dies?

In der From Klasse kann man ja einfach Messagebox.show("");
In der der anderen kalsse geht dies ja aber so nicht!

danke

gruß newdragon
 
Das beste wäre es wohl ein Event abzufeuern welches in der Form abgefangen wird.
 
Wie meinst du das ein event abzufeuern.

Also zurück gegeben wird eine datatable.

Ich will in der Form Klasse eigentlich nichts groß machen so das man die Oberfläche leicht austauschen kann.
 
Wieso geht das nicht? Du musst nur System.Windows.Forms referenzieren und kannst dann ganz normal über System.Windows.Forms.MessageBox.Show() deine Meldungen anzeigen lassen.
 
Eieieie, da hast du ja was erzählt Yuri.
Das widerspricht ja mal völlig der Datentrennung, eine so spezifische Funktion in einer Model-Klasse zu benutzen. Die Wiederverwendbarkeit ist damit jetzt nicht mehr gegeben.
 
was meinst du damit das die wiedervwendabarkeit nicht mehr gegeben ist?
 
Stell dir vor du verwendest deine Klasse in einer Console-Anwendung oder Klassenbibliothek wieder, dann kannst du die Methode welche die MessageBox.Show-Methode aufruft nicht mehr verwenden.
 
Ich weis net ob ich das jetzt richtig verstanden hab.

heist das wenn ich die messagebox in einer klasse Daten verwende kann ich sie nicht mehr in der Form verwenden?
 
toeffi schrieb:
Eieieie, da hast du ja was erzählt Yuri.
Mir ist der tiefere Sinn auch nicht bewusst, aber ich will ihm hier keine Lehre darin geben, wie man Daten, Strukturen und Abläufe modellieren sollte.
 
heist das wenn ich die messagebox in einer klasse Daten verwende kann ich sie nicht mehr in der Form verwenden?
Nein. Das heißt wenn du die Datenklasse jetzt z.B. in einer Konsolen Anwendung oder einer WPF Anwendung oder einer ASP.Net Anwendung nutzen willst dies nicht mehr (sinnvoll) funktioniert.

Bei dem von mir genannten Ansatz mit Events zu arbeiten, kannst du egal welches Frontend du letztlich verwendest die Events abfangen und mit den jeweils typischen Varianten ausgeben.
 
Soll der Dialog modal sein, also das laufende Programm auf die Reaktion des Anwenders warten?
Dann kommt Event nicht in Frage, bzw nur wenn die Daten-Klasse ihrerseits auf ein Event wartet das ihr mitteilt das der Dialog geschlossen wurde, scheint mir aber zu kompliziert.

Einfacher wäre ein Interface zu definieren in dem alle möglichen Interaktionen mit der Grafischen Oberfläche definiert sind, dann eine Klasse zu schreiben die dieses Interface implementiert und das im Konstruktor der Datenklasse übergeben wird, die Daten-Klasse greift dann nur auf Funktionen des Interfaces zurück.
 
Zurück
Oben