C# MessageBox 폼창 뒤로 떠는 오류..

안녕하세요! C# 독학중인 초급개발자입니다.

Messagebox를 자주 사용하는데… 항상 그런건 아니고 사용하다 보면 Messagebox가 폼창 뒤로 떠서 사용자들은 영문을 모른채 프로그램이 멈춰있다고 생각할 때가 많습니다.

원인이 대체 무엇 때문인지 모르겠습니다… 이게 확인해봐도 막 켰을때는 곧장 앞으로 잘나오다가 어느 상황/순간부터 뒤로 뜨기 시작합니다… 몇 가지 많은 방법을 시도해봤는데

현재창보단 무조건 앞으로 또는 띄어져있는 창 중에 가장 앞으로 Messagebox를 사용하고 싶습니다.

*단축키를 Alt + 알파벳 ← 이런 방식으로 많이 사용하는데 혹시 alt때문인가 했는데 또 잘될때가 많아서 아닌것 같고… 원인을 모르겠으니 정말 힘드네요.

*지금 사용해봤던 방식

MessageBox.Show(this, "메세지내용");    //현재 방식 폼창뒤로 뜸

MessageBox.Show( "Message", 
                 "Title", 
                 MessageBoxButtons.OK, 
                 MessageBoxIcon.Question, 
                 MessageBoxDefaultButton.Button1, 
                 MessageBoxOptions.DefaultDesktopOnly      
               );                  // <- 뒤로 뜰 때도 있음, 메세지확인 enter 처리가 안되서 불편해 패스
1 Like
  1. Form의 TopMost 속성을 제어하는지 확인
  2. Form의 BringToFront() 메서드 호출여부 확인

2가지를 확인하시면 좋을 것 같습니다.

4 Likes

두개 다 사용지 않습니다.

처음부터 그렇진않고 사용하다 어느 순간부터 뒤로 뜨기 시작합니다.
뒤로 뜨기 시작하면 그때부턴 계속 뒤로만 뜨네요.

Alt + 알파벳 ← Key down event로 단축키 설정해놓은 경우가 많습니다.

예를 들어 Alt + Q → btnSearch.PerformClick(); 이렇게 버튼을 누르도록 해놨는데

버튼을 마우스로 클릭하면 제대로 뜨긴하는데 단축키일때만 이런 상황이 발생하는걸로 확인했습니다.

1 Like