2010-06-13 4 views
0

나는 보통 수동으로 할 수있는 WPF로 일을하는 더 나은 방법을 스스로 가르쳐 주려고합니다.Viewbox의 내용을 부드럽게 회전하기

이 경우 이미지가있는 ViewBox가 있습니다. DoubleAnimation을 사용하여 이미지 90을 오른쪽으로 회전시키는 버튼도 있습니다.

이 애니메이션은 잘 동작하지만 이미지가 회전함에 따라 정사각형이기 때문에 이미지의 크기가 가장 작아 지거나 작아지면서 이미지가보기 좋게 만드는 ViewBox에 "가장 적합"합니다. 그 특정 회전 각도에 맞게.

적절한 WPF 메서드를 사용하여이 문제를 해결하는 가장 좋은 방법에 대한 조언을 찾고 있습니다. 분명히 나는 ​​모든 계산을 수동으로 할 수 있지만 .NET 아키텍처에 내장 된 컨트롤과 메서드를 사용하는 방법을 찾는 데 더 관심이 있습니다.

도움 주셔서 감사합니다.

답변

0

ViewBoxImage 만있는 경우보기 상자를 놓으십시오. Stretch 속성을 Uniform으로 설정하여 이미지를 올바르게 늘일 수 있습니다.

어쨌든 LayoutTransform 대신 RenderTransform을 사용하면 이미지가 회전 할 때 컨트롤의 위치를 ​​다시 계산하지 않아도됩니다. RenderTransform은 모든 위치 계산이 완료된 후에 개체를 회전하므로 문제가되지 않습니다. 회전하는 동안 일부 컨트롤을 지나치면 이미지 주위에 여백을 추가하십시오.

관련 문제