VB.Net MessageBox.Show () - bewegt sich meine form auf der Rückseite
Ich habe eine MDI-Anwendung. Wenn ich zeige, eine message-box mit der MessageBox.Show(), die gesamte Anwendung verschwindet hinter all meinen offenen Fenstern, wenn ich ignorieren Sie die Meldung.
Dem code ist nichts besonderes. In der Tat, hier ist die Linie, die ruft der message-box von einer Untergeordneten MDI-form:
MessageBox.Show(String.Format("{0} saved successfully.", Me.BusinessUnitTypeName), "Save Successful", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1, MessageBoxOptions.DefaultDesktopOnly)
Mir.BusinessUnitTypeName() ist eine nur-lese-Eigenschaft getter, der eine Zeichenfolge zurückgibt, je nach dem Wert der member-Variablen. Es gibt keine Nebenwirkungen in dieser Eigenschaft.
Irgendwelche Ideen?
- Ich habe das exakt gleiche problem, und ich habe nicht in der Lage, um es herauszufinden.
InformationsquelleAutor Pittsburgh DBA | 2008-10-01
Schreibe einen Kommentar Antworten abbrechen
Du musst angemeldet sein, um einen Kommentar abzugeben.
Entfernen Sie den letzten parameter
MessageBoxOptions.DefaultDesktopOnly
.Vom MSDN:
Den letzten parameter erlaubt die Kommunikation von einem hintergrund Windows-Dienst mit den active desktop durch csrss.exe! Siehe Bart de Smet ist blog-post für details.
Entfernen Sie die
MessageBoxOptions.DefaultDesktopOnly
parameter und es wird korrekt funktionieren.DefaultDesktopOnly
gibt an, dass "Die Meldung angezeigt, die auf dem active desktop", die bewirkt, dass die Fokus-Verlust.Diese Antworten sind richtig, aber ich wollte hinzufügen, ein weiterer Punkt. Ich kam in dieser Frage während der Arbeit mit einem anderen code. Eine einfache message-box verursacht wurde und die vor die meisten Fenster zu bewegen, um den Rücken:
MessageBox.Show("Hallo").
Stellt sich heraus, es war eine BindingSource.Endedit-Befehl vor der MessageBox. Die BindingSource nicht angeschlossen ist, steuert noch, aber es verursacht das Fenster zum ändern der z-Positionen.
Bin ich nur mit diesem Hinweis, da meine Suche brachte mich auf diese Frage und ich dachte, es könnte hilfreich sein, um jemand anderes.