2013-04-18 2 views
0

두 가지 형식이 있습니다. 하나는 frmMain이고 다른 하나는 frmDatasets입니다. frmDatasets는 정렬 알고리즘을 비교하기위한 프로그램 인 응용 프로그램의 데이터 집합을 관리하는 데 사용됩니다. 몇 가지 항목이있는 frmDatasets에 MenuStrip이 있습니다. 방금 Add Dataset 항목을 파일에서로드하거나 특정 매개 변수에 따라 생성하는 옵션이있는 드롭 다운 메뉴로 변경하기로 결정했습니다. 모두 좋고 좋았어. 항목을 추가하고 주위의 아이콘을 바꿔보고 이벤트 처리기의 서명을 변경하여 올바른 Click 이벤트를 처리하면됩니다.메뉴 항목과의 상호 작용을 위해 양식이 다시 전송됩니다.

프로그램을 실행할 때를 제외하고 처음으로 Add Datasets 최상위 항목을 클릭하면 frmDatasets가 뒤쪽으로 보내져 비활성 frmMain이 표시됩니다. 항목을 다시 클릭하면 평소처럼 드롭 다운 메뉴가 표시됩니다.

대신 다른 최상위 메뉴 항목을 클릭하면 정상적으로 작동합니다. 그러나 데이터 세트 추가 항목 위에 마우스를 올려 놓으면 '뒤로 보내기'가 실행됩니다.

"send to back"이라고 말하지만 실제로는 frmMain 뒤에 붙여 놓습니다. Visual Studio 및 Firefox와 같은 다른 창 앞에 표시됩니다.

누구나 지구상에서이 양식이 어떻게 진행되고 있는지 알 수 있습니까?

EDIT : frmDatasets를 모달 대화 상자로 표시하면 전체 "뒤로 보내기"작업이 중지되지만 목록을 표시하기 전에 메뉴 항목을 두 번 클릭해야합니다.

EDIT2 : onClick 이벤트를 재정 의하여 mnuAddDatasetDropDown.ShowDropDown을 호출하면 두 번 클릭 문제가 제거되지만 양식을 모달 대화 상자로 유지하는 경우에만 해결할 수 있습니다. 아직도 돌아온다. 무시 mouseEnter 그것을 해결하기 위해 아무것도하지 않습니다.

답변

0

frmDatasets의 TopMost 속성을 디자인보기에서 'true'로 설정하면 모든 문제를 해결할 수 있습니다. 불행하게도 계속 진행되고 있었던 것에 관해 통찰력이 없다. 그러나 만일 누군가 다른 사람이이 문제를 가지고 있으면 잘만되면 그것은 그들도 위해 일할 것이다.

관련 문제