응용 프로그램이 잠금을 획득하려고 대기하는 동안 사용자에게 알려주는 C# Windows Forms 응용 프로그램에 상태 창이 표시됩니다. 이것은 응용 프로그램에서 정의한 것입니다. 그러나 사용자가 다른 창 (예 : 뒤에있는 더 큰 기본 창)을 클릭하는 경우에도 창은 항상 표시되고 항상 내 응용 프로그램의 다른 모든 창의 맨 위에 있어야합니다.내 응용 프로그램의 다른 모든 창 위에 창을 유지하는 방법은 무엇입니까?
앱이 백그라운드에서 계속 시도하고 잠금 장치가 결국 획득 될 수있는 경우 자동으로 창을 닫아야하기 때문에 모달 (ShowDialog()를 사용할 수 없음)이어야합니다. 전체 윈도우 스테이션 (즉 해당 터미널 세션에서 실행중인 모든 응용 프로그램).
저는 Form.TopMost 속성을 알고 있지만, 다른 응용 프로그램의 경우에도 하나의 창을 가져와 유지할 수 있습니다. 이것은 분명히 내가 원하는 것이 아닙니다.
나는 이것이 가능하다는 것을 알고 있으며 다른 응용 프로그램에서 여러 번 본 적이 있습니다. 나는 그것이 어떻게 행해질 수 있는지 모른다.
주 부모와 다른 여러 폼 클래스를 시작하고 이벤트의 원래 여는 타임 라인을 유지하려는 경우 owner 속성을 모두 생략하십시오. 이렇게하면 부모가 열어 놓은 각 자식 창이 부모 위에 열리게됩니다. 부모 창과 상호 작용할 때 숨겨 지지만 활성화 된 상태로 유지되지만 부모가 여는 다른 하위 창과 상호 작용할 때는 포커스를 잃을 수 있습니다. 소유자 속성을 일관성없이 사용하면 자식 창에서 이상하고 비정상적인 동작이 발생합니다. – IbrarMumtaz