Laden...

VS 2005 Form Designer = MVC-Design?

Erstellt von Fabs vor 17 Jahren Letzter Beitrag vor 17 Jahren 2.673 Views
F
Fabs Themenstarter:in
5 Beiträge seit 2006
vor 17 Jahren
VS 2005 Form Designer = MVC-Design?

Hi, ich fange gerade an mich in c# einzuarbeiten (bis jetzt 2. Semester Java "Erfahrung" )und wollte mir jetzt aus spaß mal eine Form zusammenklicken.

Wenn ich bei VS 2005 ein neue Windows Anwendung erstelle, dann bekomme ich 3 .cs files.

  1. programm.cs
  2. Form1.Designer.cs
  3. Form1.cs

Ich würde jetzt mal behaupten, dass Nummer 1 mein Model,Nummer 2 mein View und Nummer 3 mein Controll ist.
Wir hatten das, wenn ich es richtig in Erinnerung habe, so gelernt, dass dann die main in der controll steht und auch da ein object von 1. und 2. erstellt wird.

Sehe ich das jetzt teils richtig,komlett oder garnicht richtig?

Wäre für Hilfe dankbar.

MfG
fabs

B
1.529 Beiträge seit 2006
vor 17 Jahren

Leider nicht.
Die beiden Dateien Form1.cs und Form1.Designer.cs stellen die Klasse deines Forms dar. In der Form1.cs landet der ganze selbsterstellte Code, während Form1.Designer.cs den vom Designer erstellten Code (im Besonderen die Erzeugung und Initialisierung der Controls) enthält.
Die Datei program.cs stellt jetzt die statische Klasse mit der Main-Methode dar, die per default nur eine Instanz des Forms erzeugt und diese per Application.Run ausführt.

Das bedeutet, die Aufteilung in die drei Dateien hat nichts mit den drei Layern zu tun, sondern ist eine - prinzipiell willkürliche - Aufteilung des Codes durch den VS-Designer.

F
Fabs Themenstarter:in
5 Beiträge seit 2006
vor 17 Jahren

schade,
und wenn ich es mir jetzt anders aufbaue, dann funktioniert sicherlich die Designfunktion nicht mehr oder?ich finde die idee des zusammenklickens ja toll, aber auf mvc will ich nicht verzichten.

B
1.529 Beiträge seit 2006
vor 17 Jahren

Du wirst ja in einer Anwendung mehrere Forms haben. Der Designer legt für jede From zwei Dateien an ( <Formname>.cs und <Formname>.Designer.cs). In diesen implementierst du jetzt nur diese Forms; sie stellen also quasi dein Control-Layer dar.
Wenn du dich jeweils nur auf die zugehörige Form beschränkst, kannst du den Designer ohne Probleme verwenden.
Ansonsten kannst du deine Logik in so vielen Layern, Klassen und Dateien, wie du möchtest, implementieren.

F
Fabs Themenstarter:in
5 Beiträge seit 2006
vor 17 Jahren

hmmm,
ich sehe schon, ich sollte mir das mit den forms mal genauer anschauen.
also ich verstehe das jetzt so, dass ich ein model und ein control habe, und mehrere Forms (bezogen auf "Du wirst ja in einer Anwendung mehrere Forms haben")?
ich finde das nen bisl komisch. control war bei uns inner uni immer der teil, wo z.B. die listener drin standen. bei VS 2005 stehen die aber in dem Form dingensbumens.
ich werd da jetzt mal in meinem C# buch bei form nachlesen. (Visual C# 2005 von Eller)

MfG
Fabs

F
Fabs Themenstarter:in
5 Beiträge seit 2006
vor 17 Jahren

also irgendwie stelle ich mich da wohl zu doof an das jetzt hinzubekommen.
In meinem Buch habe ich auch nichts zu MVC gefunden.
Falls es hilft, will ich mal erklären, was ich vor habe.
Ich habe hier ein Programm (Konsole) welches mir mit versch. Sortiealgorithmen ein Array sortiert. jetzt will ich das ganze etwas sauberer und mit gui neu machen. Bis jetzt ist alles in meiner "main- Klasse". Ich will also einmal eine Klasse mit der Oberfläche, eine mit den ganzen Algorithmen und eine, die auf die verschiedenen actions reagiert.

Wie stelle ich das nun mit VS 2005 an? Ich stehe da echt gerade auf dem Schlauch.

Wäre für weitere Hilfe sehr dankbar.

MfG
Fabs

476 Beiträge seit 2004
vor 17 Jahren

Hallo Fabs,

Rainbird hat vor Zeiten eine kleine MVC-Beispielanwendung geschrieben und sie im Forum gepostet. Sie hilft dir bestimmt dein MVC Wissen auf C# zu transferieren.

-yellow

Selbst ein Weg von tausend Meilen beginnt mit einem Schritt (chinesisches Sprichwort).

Mein Blog: Yellow's Blog auf sqlgut.de

F
10.010 Beiträge seit 2004
vor 17 Jahren

Vorallem versuche nicht an MVC festzuhalten.

Unter .NET scheint sich gerade MVP zu verbreiten 😉

F
Fabs Themenstarter:in
5 Beiträge seit 2006
vor 17 Jahren

@yellow
danke, werde ich mir mal anschauen.

@fzelle
MVP == Modell View Presenter? habe ich das richtig ergoogled?
Wenn ja, dann werde ich mir dies mal genauer anschauen.

MfG
Fabs

edit: ich habe mir das von Rainbird jetzt mal angeschaut. ist ja irgendwie ganz schön komplex und so richtig habe ich den Durchblick noch nicht gefunden aber ich arbeite noch dran.