Entwickler-Ecke

WinForms - WinForm in den Hintergrund verschieben???


winx - Fr 07.07.06 14:01
Titel: WinForm in den Hintergrund verschieben???
Hi

wie kann ich ein WinForm in den Hintergrund verschieben, damit ein zweites vor diesem erscheint?


C#-Quelltext
1:
2:
3:
4:
5:
public void do()
{
  Form1.ShowDialog(); //jetzt ist es im Vordergrund
  
}

Während diese Form noch offen ist, soll ein zweites Formular per ButtonClick im Form1 erzeugt und angezeigt werden
und zwar so:


C#-Quelltext
1:
2:
3:
4:
while (!abort)
{
  Form2.Show();
}


Nur erschient jetzt immer das 2.Formular nicht im Vordergrund sondern hinter dem Form1...


wie kann ich das ändern???

danke,
winx


Christian S. - Fr 07.07.06 14:13

Es müsste doch reichen, die erste Form nicht mittels ShowDialog, sondern mittels Show anzuzeigen.


winx - Fr 07.07.06 14:25

aber wenn ich die erste form mittels show() anzeige, geht sie kurz auf und ist dann wieder weg...


Christian S. - Fr 07.07.06 14:41

:nixweiss: Da musst Du dann schon etwas mehr Code zeigen.


winx - Fr 07.07.06 14:45

also:

In der einen Klasse wird diese Funktion aufgerufen

C#-Quelltext
1:
m_MainForm.ShowDialog();                    



Dann wird aus einer eingebundenen DLL heraus wieder ein Form der jetzigen Apllikation aufgerufen.
Von diesem kennt die DLL nur die Schnittstelle:

also ruft die DLL diese Funktion im eigentlichen Formular auf (in ner while-Schleife):


C#-Quelltext
1:
2:
3:
4:
5:
public void showForm()
        {
            this.Show();
            this.BringToFront();
        }


Christian S. - Fr 07.07.06 14:51

Hallo!

Damit kann ich nichts anfangen. Mehr als Einzeiler wären da schon wirklich gut.

Aber: Wenn die Form verschwindet, wenn Du das ShowDialog durch ein Show ersetzt, wird wohl danach etwas ausgeführt, was die Form verschwinden lässt. ShowDialog wartet ja, bis die Form wieder geschlossen wird, daher tritt das erst auf, wenn Du es durch Show ersetzt.

Grüße
Christian


winx - Fr 07.07.06 14:53

was könnte das sein, was dass Form verschwinden lässt???
Oder muß ich im Form noch irgendwas einstellen, damit es bei
show() dableibt?


Christian S. - Fr 07.07.06 15:15

user profile iconwinx hat folgendes geschrieben:
was könnte das sein, was dass Form verschwinden lässt???
Meine Glaskugel ist in der Reparatur.

user profile iconwinx hat folgendes geschrieben:
Oder muß ich im Form noch irgendwas einstellen, damit es bei
show() dableibt?
Nein, da ist mir nichts bekannt.


Kha - Fr 07.07.06 18:23

Auch wenn dich Christian nun schon zweimal vergebens dazu aufgefordert hat, etwas Code preiszugeben, versuche ich mal zu glaskugeln:
Du hast Application.Run vergessen.


winx - Mo 10.07.06 09:58

das werd ich mal probieren. falls es nicht klappt, werd ich mal etwas source posten...