2011-03-10 2 views
5

저는이 문제를 당분간 당부하고 있지만 저에게 도움이되는 솔루션을 찾을 수 없었습니다. 저는 사용자가 listpicker에 새로운 값을 입력 할 수있는 사용자 정의 컨트롤이있는 팝업 컨트롤을 가지고 있습니다. 이 모든 모드는 세로 모드에서 제대로 작동하지만 휴대 전화가 회전하면 (에뮬레이터) 팝업이 세로 모드로 유지됩니다. 전화가 이미 풍경에있을 때 팝업을 열어도 효과가 없습니다.WP7 : 팝업 + 콘텐츠 회전?

이 문제를 해결할 수있는 방법이 있습니까? Rotatetransform 사용을 제안하는 사람들이 있지만 텍스트 상자 등에서 이렇게하면 완전히 사라집니다./

답변

4

이것은 아마도 Popup 컨트롤의 버그라고 생각합니다. 나는 그 질문을 전에 들었다. 그러나 나는 또한 Popup 컨트롤의 성능이 그렇게 좋지 않다고 들었으므로 일반 프레임 구성 요소 (예 : Grid)를 사용하여 팝업 콘텐츠를 포함하고 표시하거나 숨기는 것이 더 낫다고 생각합니다. (적절한 경우 애니메이션 포함). 최소한 페이지 방향이 바뀌면 올바르게 회전합니다.

+0

지금이 노력과 약속 같은데 - 감사 :

나는이 같은 일을있어! –

+0

+1 나는 두 방향을 모두 지원하는 응용 프로그램은 물론, 팝업이 실제로 가로 방향으로 설계되어 있다고 생각하지 않습니다. DIY 버전이 더 좋습니다. – AnthonyWJones

+0

Dereks 제안에 따라 페이지의 XAML에서 새 컨트롤에 사용자 정의 컨트롤을 추가했습니다. 그런 다음 그리드 가시성을 간단히 전환하고 초상화와 풍경 모두에서 완벽하게 작동합니다. 고마워 데릭! –

2

팝업을 사용하지 말고 팝업 안에 테두리를 배치하고 테두리에 내용을로드하십시오.

//In .xaml 
<Popup x:Name="myPopup"> 
    <Grid> 
     <Grid.RowDefinitions> 
      <RowDefinition Height="480" /> 
     </Grid.RowDefinitions> 

     <Border x:Name="popupBorder"/> 
    </Grid> 
</Popup> 

//In .xaml.cs 
popupBorder.Child = new MyPopupPage(); //MyPopupPage is the "Windows Phone Landscape Page" 
myPopup.IsOpen = true; 
+0

예제에서는 테두리가 아닌 모눈을 배치합니다.^_ ^ –