이 Windows Forms 응용 프로그램은 알림 영역에 있습니다. 아이콘을 클릭하면 맨 앞에 표시되고 다시 클릭 (또는 앱 X 아이콘 클릭)되면 다시 표시됩니다. 이것은 아이콘을 클릭하여 표시 할 때 창 상단이 항상 중요하게 보이는 앱 유형입니다 (선택 사항 임).Windows Forms에서 TopMost 속성을 사용하는 데 정말로 괴로운 버그가 발생했습니다.
아이콘을 마우스 오른쪽 버튼으로 클릭하면 "항상 맨 위에"옵션을 활성화할지 여부를 선택할 수있는 상황에 맞는 메뉴가 나타납니다. 응용 프로그램이 처음 시작되면 응용 프로그램 설정이 XML 파일에서 읽히고 99 %가 정상적으로 작동하고 TopMost
속성이 제대로 읽히고 쓰여집니다.
잠시 후 (보통, 최대 절전 모드 및 거의 종료하지 않음) TopMost
은 작동을 멈 춥니 다.. 옵션을 변경하지 않고 옵션 값을 변경하는 것이 아니라 알림 영역 아이콘을 클릭하고 앱이 맨 앞에 표시되지 않는다고 생각합니다. 표시되지만 배경에 있습니다 (Alt + Tab에 표시됨). "항상 위에"있지는 않습니다. 상황에 맞는 메뉴를 표시하고 옵션을 사용하지 않도록 설정 했으므로 (사용하도록 설정했기 때문에) 다시 활성화하면 이후에 작동하기 시작합니다. 응용 프로그램은 이제 "항상 맨 위에"있습니다. 그러나 잠시 후이 능력을 잃을 수 있습니다.
왜 이런 일이 발생하고 이런 일이 발생하는지 이해할 수 없습니다. 왜 아무 생각 없어? 그렇지 않다면 어떻게 그런 행동을 디버깅하려고 할 수 있습니까?
편집 :
은 내가 TopMost
속성이 나는 이상한 동작을 알 수 있지만, 더 좋은 없었다 있는지 확인하기 위해 변경되었을 때 메시지 박스를 표시하는 코드 조각을 추가했다. 양식이 TopMost = true
이었기 때문에 도움이되지 않았지만 여전히 배경에있었습니다 ...
내 앱이 최상위 창만은 아니지만 Windows Explorer, Firefox 등은 최상위가 아니며 창은 그 위에 있어야합니다. 이 결함 때문에 어떤 일도 일어나지 않습니다. 나는 옵션을 사용 불가능하게하고 다시 사용 가능하게해야한다. –
그리고 최대 절전 모드가 문제라고 생각하지 않습니다. 방금 테스트를 수행하고 Explorer와 Firefox를 사용하여 컴퓨터를 최대 절전 모드로 전환했습니다. 그것을 복원 한 후, 내 애플 리케이션은 여전히 최고입니다.그것은 다른 상황에서 발생해야합니다 ... –
내가 제안한 해결 방법을 시도 했습니까? (창을 표시 한 후 재설정하고 "최상위"속성을 설정하십시오.) – peterchen