Laden...

von einer Klasse auf ein Formular zugreifen?

Erstellt von ZeroQool vor 17 Jahren Letzter Beitrag vor 17 Jahren 1.111 Views
Z
ZeroQool Themenstarter:in
322 Beiträge seit 2006
vor 17 Jahren
von einer Klasse auf ein Formular zugreifen?

Hallo, ich habe in einer Klasse mehrere Funktionen und Prozeduren geschrieben um auf dem SQL Server Prozeduren zu erstellen. Klappt alles wunderbar, aber nun wollte ich dazu eine Art von Logs schreiben. zB was gerade der CommandText ect. ist, aber leider kann ich von meiner Klasse aus auf keine rtbox zugreifen die auf irgendeinem Formular liegt. Hoffe, dass ich es einigermaßen verständlich ausgedrückt habe. Hat jemand Vorschläge? thx

49.485 Beiträge seit 2005
vor 17 Jahren

Hallo ZeroQool,

von einer nicht GUI-Klasse nicht/nie auf das GUI zugreifen (MVC). Bessere Lösung findest du in [FAQ] Kommunikation von 2 Forms

herbivore

Z
ZeroQool Themenstarter:in
322 Beiträge seit 2006
vor 17 Jahren

hallo, thx

habe noch ein kleines problem bzw Frage.

Formular:

    public void Logging(string LogMessage)
    {
      rTB_Status.Text = rTB_Status.Text + LogMessage;
      listBox1.Items.Add(LogMessage);
    }

Klasse:

frm_Datenbank frm_UebergabeDB = new frm_Datenbank();
frm_UebergabeDB.Logging("- Tabelle : " + FArrayDef[0] + " schon vorhanden!");

Wenn ich debugge seh ich das der den String übergibt, aber in meiner rtb tut sich gar nichts..listview ebenso...alles leer. Woran liegt das? Wenn ich zb

MessageBox.Show(LogMessage);

anstatt

listBox1.Items.Add(LogMessage);

schreibe poppt die MessageBox auf, aber wieso will das nicht mit dem LV oder rtb funktionieren?

49.485 Beiträge seit 2005
vor 17 Jahren

Hallo ZeroQool,

vermutlich, weil dein GUI durch eine langlaufenden Aktion blockiert ist. Langlaufende Aktionen, also länger als als 1/10s, gehören in einen extra Thread.

herbivore