Entwickler-Ecke
Sonstiges (.NET) - Wie können verschiedene Forms auf eine Klasse zugreifen?
Oweh - Mi 19.03.08 11:03
Titel: Wie können verschiedene Forms auf eine Klasse zugreifen?
Hallo zusammen,
ich möchte gerne eine Klasse (Dokument) anlegen auf die ich mit unterschiedlichen Forms darauf zugreifen kann. In C++(MFC) gab es hier die Dokumenten- Ansichtstruktur und Zeiger. Ich wollte das Prgramm so aufbauen, dass in der Klasse die Berechnungen und Daten(Struktur)sind. Form 1 ist das Grundfester des Programms, Form 2 dient zum
Editieren und eingeben der Programm-Parameter.
Instanziiere ich in Form 1 die Datenklasse, kann ich mit Form 2 nicht mehr darauf zugreifen. Ich müsste jetzt nach dem Instanziiern einen globales Objekt( heisst das so in C#?) oder das erzuegt Objekt an Form 2 weitergeben.
Ich habe schon probiert, das erzeugte Objekt in staic Methoden abzulegen die ich dann
von Form 2 aus wieder aufrufen wollte. Dies scheiterte an den Variable (Objektzuweisung).Dann habe ich probiert Form 2 von Form1 abzuleiten , ich konnte zwar die Daten ansprechen. Form 2 lies sich aber nur einemal aus Form 1 aufrufen und sah auch irgendwie komisch (hatte keinen Rahmen mehr ) aus.
Wäre dankbar für jede Hilfe da ich hier schon mehrere Stunden an dem Problem Sitze.
DANKE!
Moderiert von
Christian S.: Topic aus ADO .NET und Datenbanken verschoben am Mi 19.03.2008 um 10:31
Christian S. - Mi 19.03.08 11:34
Hi!
Du kannst in Form2 ein Feld anlegen, welches vom Typ der Datenklasse ist:
C#-Quelltext
1: 2: 3: 4:
| public partial class Form2 : Form {
public DatenKlasse Daten {get; set;} } |
Und wenn Du Form2 aufrufen willst, machst Du das so:
C#-Quelltext
1: 2: 3:
| Form2 f2 = new Form2(); f2.Daten = datenAusForm1; f2.ShowDialog(); |
Grüße
Christian
//edit: Ach ja, :welcome:
Oweh - Mi 19.03.08 14:19
Titel: Wie können verschiedene Forms auf eine Klasse zugreifen.
Hallo Cristian,
vielen Dank für die schnelle Antwort.
Damit ich es besser verstehe noch eine Frage:
Was bewirken "get" und "set" in der Methode Daten und was ist "datenAusForm1".
Ist es das Oabjekt das ich in Form 1 instanziiert habe?
Vielleicht könntest Du mir noch ein zwei Worte hierzu schreiben.
Danke!
Gruß Uwe
JüTho - Mi 19.03.08 14:38
Titel: Re: Wie können verschiedene Forms auf eine Klasse zugreifen.
Oweh hat folgendes geschrieben: |
Was bewirken "get" und "set" in der Methode Daten |
Das sind absolute Grundlagen zum Aufbau einer Klasse unter C#, siehe z.B.
OpenBook C# Kap.4 [
http://www.galileocomputing.de/openbook/csharp/kap03.htm]. Es ist nicht angemessen, dass ich mir hierfür eine eigene Erklärung ausdenke.
Oweh hat folgendes geschrieben: |
und was ist "datenAusForm1".
Ist es das Oabjekt das ich in Form 1 instanziiert habe? |
Genau so ist es. Du siehst daran auch, wie nützlich "sprechende Namen" sind: Du hast es richtig verstanden, ohne dass Christian alles erklärt hat.
Jürgen
Oweh - Fr 21.03.08 13:54
Hallo zusammen,
vielen Dank für den Tipp.
Es funktioniert !!!! :D
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!