2009-12-15 3 views
2

Window에 국경없는 Dialog을 여는 옵션이 있습니다. 옵션을 설정하면 Dialog이 닫히고 주 Window이 다시 활성화됩니다. 그리 어렵지 않습니다.모든 컨트롤 위에 레이어를 표시하는 방법

하지만 옵션 화면의 변경된 옵션으로 인해 기본 창을 새로 고치고 새로 고침 전에 변경 사항이 적용되지 않도록해야합니다.

이제는 중간에 ProgressBar이라는 추가 레이어를 추가하여 사용자에게 알리고 싶습니다. please wait, we are refreshing.

이 문제에 대한 모범 사례는 무엇입니까?

답변

5

Adorners (MSDN link)를 보면 다른 UI 요소 위에 렌더링 표면을 고정시킬 수 있습니다. 이렇게하면 기존 컨트롤이 상쾌한 단계를 알지 못하게되어 Adorner 레이어 내부의 진행 시각화 및 Adorner 레이어 표시/숨기기에 필요한 코드 덩어리를 잠글 수 있습니다.

+0

감사합니다. 시도해 보겠습니다. – Snake

+0

좋아요. 그건 완벽하게 작동합니다! – Snake

+0

쏴, 더 이상 링크를 사용할 수없는 것 같습니다. – matrixugly

1

Popup 프리미티브에 대해 방금 알게되었습니다. 제어. 모달은 아니지만 화면의 다른 컨트롤을 덮어 씁니다.

대기 메시지를 표시하는 불투명 한 가운데 패널이있는 투명한 배경을 가진 전체 창 (사용자가 창을 움직일 때 이동해야 함)을 덮는 팝업을 가상으로 열 수 있습니다. 흐리게 처리 된 UI 환경을 위해 색을 칠한 투명한 배경을 팝업에 추가합니다.

+0

"Shadow"라는 테두리로이 색조를 사용했습니다 Background = "검은 색"불투명도 = "0.36"가시성 = "숨김". Matthew MacDonald가 작성한 "VB 2008의 Pro WPF"코드 샘플에서이 코드를 발견했습니다. –

+0

이 질문에 대한 답변에서 설명한대로 전체 화면 팝업 창을 만들 수 없습니다. http://stackoverflow.com/questions/2633129/cant-create-a-fullscreen-wpf-popup –

관련 문제