У меня есть MessageBox, который я кодирую следующим образом:
MessageBox.Show(new Form(){TopMost=true, TopLevel=True}, "Message","Title", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);
Для лучшего примера я делаю это для события FormClosing:
private void Example_FormClosing(object sender, FormClosingEventArgs e){
MessageBox.Show(new Form(){TopMost=true, TopLevel=True}, "Really close?"," Program", MessageBoxButtons.OKCancel, MessageBoxIcon.Information);
}
Но почти каждый раз, когда мне приходится менять окно на своем компьютере (например, возвращаться в Visual Studio), прежде чем я увижу свое окно сообщений, это не удобно для пользователя и действительно раздражает.
Я проверил, что моя основная форма не была в TopMost=true, я попробовал только TopMost или только TopLevel, StartPosition=FormStartPosition.CenterScreen, но ничего не сработало.
[Обновление]
Я старался:
private void Example_FormClosing(object sender, FormClosingEventArgs e){
MessageBox.Show(this.Owner, "Really close?"," Program", MessageBoxButtons.OKCancel, MessageBoxIcon.Information);
}
Я бы хотел, чтобы окно сообщений было в передней части моего окна, и мне не нужно было бы менять окно, чтобы увидеть его, потому что оно находится за текущим окном.
У вас есть идея решить эту проблему?