[C#] Datenaustausch zwischen zwei Dialogen

WhiteGandalf

Mitglied
Hallo zusammen!

Also mein Problem ist folgendes: Ich habe eine neue Form (Form1) erstellt und ihr einen Button hinzugefügt. Wenn man darauf klickt, öffnet sich ein modaler Dialog (mittels ShowDialog()) in dem man verschiedene Einstellungen vornehmen kann...nun sollen diese Einstellungen aber an Form1 übergeben werden wenn der Dialog geschlossen wird.
Kann mir da jemand helfen? (bin in c# noch ein ziemlicher Anfänger ;))
 
Hallo zusammen!

Also mein Problem ist folgendes: Ich habe eine neue Form (Form1) erstellt und ihr einen Button hinzugefügt. Wenn man darauf klickt, öffnet sich ein modaler Dialog (mittels ShowDialog()) in dem man verschiedene Einstellungen vornehmen kann...nun sollen diese Einstellungen aber an Form1 übergeben werden wenn der Dialog geschlossen wird.
Kann mir da jemand helfen? (bin in c# noch ein ziemlicher Anfänger ;))

ich weis nicht, ob das die beste / gute lösung ist: aber es geht einfach ^^

bei mir hatte der Dialog mehrere attribute, und getter für diese

dann
C:
dialog.ShowDialog();
if (dialog.DialogResult == DialogResult.OK) { // hierfür muss dein dialog beim button ok, als wert OK liefern (property setzen)
  string temp = dialog.getTown();
  ...
}
dialog.Dispose();
 
Zuletzt bearbeitet:
Hi Proko,

also die Funktion "GetTown" gibt es bei mir gar nicht ... was ist das für eine Funktion und was tut sie?

wie gesagt dein Dialog braucht Attribute und Getter

angenommen du hast private string town;

dann ist der getter dafür:

public string getTown() {
return town;
}

dein dialog hat wohl auch eine TextBox, und wenn du den ok button klickst, musst du halt in der methode button_ok_click oder wie sie dann heißt, TextBox.text in town schreiben

natürlich kann das jetzt jedes beliebige andere attribut sein, und den getter rufst dann von außen auf um auf das attribut Town zuzugreifen welches vom benutzer eingeben wurde

mfg
 
Zuletzt bearbeitet:
Gerade bei C# gibt es für Getter und Setter ein spezielles Sprachkonzept, so dass man das nicht über einen Funktionsaufruf erledigen muss:
C++:
class Irgendwas
{
    string strTown; // Attribut

    // ...
    
    
    // Getter, Setter für strTown
    // Bei Bedarf können beide oder auch nur einer implementiert werden
    
    public string Town
    {
        get { return strTown;  } // Getter
        set { strTown = value; } // Setter
    }
    
    // Verwendung:
    
    public void Test()
    {
        string str = Town;
        Town = "bla bla"
    }        
}

@WhiteGandalf
Kleiner Tipp: Für C# ist das .NET-Forum zuständig.

Gruß
MCoder
 
Zuletzt bearbeitet von einem Moderator:
also hast du für jedes attribut einen getter geschrieben?
Theoretisch müsste ich doch auch eine Struktur (struct) schreiben können und die dann zurückgeben...

Danke für den Denkanstoss^^
 
Du kannst natürlich auch alle relevanten Daten in einer Struktur zusammenpacken und dann "am Stück" zurückgeben. Welchen Datentyp der Getter letzendlich zurückgeben soll, kannst du ja selbst festlegen.

Gruß
MCoder
 
Zurück