Hallo,
ich habe ein normales Windows Form, in welchem eben ein paar Felder und Labels sind. Dann habe ich eine Klasse, welche einen Form Parameter hat, welchen ich aus meinem Form mit "this" fülle. Möchte ich jetzt aber in der aufgerufenen Methode auf die Textfelder zugreifen funtioniert das nicht. Was mache ich falsch ... benötige ich setter und getter für alle Felder im Form? Im Grunde war das mein Versuch MVC mit C# Forms zu machen. Ich nutze dafür das command Pattern ... also sprich, jemand klickt auf den "Speichern" Button, dann gibts ein SaveCommand und so weiter. Da ich aber im Command auch eine Meldung an eine Textbox im Form zurückgebe, muss ich auf dieses aus dem Command zugreifen können, oder ist meine Idee nicht die beste? Wie würde man MVC anders erstellen in C#?
Grüße und Danke 😃
Dann habe ich eine Klasse, welche einen Form Parameter hat, welchen ich aus meinem Form mit "this" fülle. Möchte ich jetzt aber in der aufgerufenen Methode auf die Textfelder zugreifen funtioniert das nicht. Wenn das funktionieren sollte, müsste der Parameter
MyForm
sein oder darauf gecastet werden.
Ich würde aber lieber anders vorgehen, bspw. eine Struktur, welche die relevanten Daten enthält. Siehe auch [FAQ] Kommunikation von 2 Forms
Hallo,
wie füllt man denn aber dann aus dem Controller die Felder des Forms?
Grüße
Korrigiert mich, wenn ich falsch liege:
Meiner Ansicht nach ist der Controller nicht dazu da, dem View irgendwelche Daten wieder zu übergeben. Das View sollte vom Model informiert werden, sobald sich seine Daten ändern, worauf das View sich dann die Daten des Models besorgt.
using Skill
Da ich aber im Command auch eine Meldung an eine Textbox im Form zurückgebe, muss ich auf dieses aus dem Command zugreifen können, oder ist meine Idee nicht die beste?
Das ändern sollte eigentlich Aufgabe der Form
sein. Also Command aufrufen (sind wir hier in WPF?) und die Änderung des Textes zurückbekommen. Im Notfall auch die TextBox übergeben, was ich aber eher für zweifelhaft halte.
Aber das sollte in [FAQ] Kommunikation von 2 Forms (bzw. den Links) erklärt sein.
Hallo math55,
MVC eignet sich für normale Window-Forms-Anwendungen nicht. Bei solchen ist es am besten, Controls und View zusammenzufassen und nur das Modell davon separat zu halten. Das Modell sollte dann, wie schon weiter oben gesagt, nicht auf das GUI zugreifen.
herbivore