저는 Silverlight 3.0 + .Net 3.5 + VSTS 2008 + C#을 사용하여 ASP.Net 기반 실버 라이트 응용 프로그램을 개발하고 있습니다. 다음 코드 스 니펫에서 "TranslateTransform"및 "RenderTransformOrigin"의 기능에 대해 매우 혼란 스럽습니다.Silverlight에서 조정 변환 문제
BTW : RenderTransformOrigin은 x 축과 y 축의 UI 요소를 일부 오프셋만큼 이동한다는 것을 대략 이해합니다. 맞습니까? 전체 UI 요소를 이동 하시겠습니까?
<Grid Margin="-1,0,100,0" x:Name="controlsContainer" Height="35" RenderTransformOrigin="0.5,0.5" VerticalAlignment="Bottom">
<Grid.RenderTransform>
<TransformGroup>
<ScaleTransform/>
<SkewTransform/>
<RotateTransform/>
<TranslateTransform Y="0"/>
</TransformGroup>
</Grid.RenderTransform>
<Rectangle Margin="0,0,0,0" Height="35" VerticalAlignment="Top" Fill="#97000000" Stroke="#00000000" RenderTransformOrigin="0.5,0.5"/>
<VideoPlayer:mediaControl Height="35" Margin="1,0,0,0" HorizontalAlignment="Stretch" VerticalAlignment="Top" x:Name="mediaControls" Visibility="Visible"/>
</Grid>
감사합니다. 1. 내 코드에서 elements controlsContainer의 RenderTransformOrigin 값은 (0.5, 0.5)입니다.이 요소가 오른쪽 50 %와 아래 50 %로 이동한다는 의미입니까? TranslateTransform Y = "0"의 함수는 무엇입니까? 2. Rectangle 요소의 경우 RenderTransformOrigin의 값은 (0.5, 0.5)이며이 요소가 오른쪽 50 %와 아래 50 %로 이동한다는 의미입니까? – George2
@ George2, 아니요 TranslateTransform은 RenderTransformOrigin의 영향을받지 않습니다. 마지막 예제에 대한 내 의견을 참조하십시오. "원점은 여기에 중요하지 않습니다." –
1. 샘플 코드에서 controlsContainer 요소에 대한 RenderTransformOrigin을 제거하고 영향을주지 않고 Rectangle 요소에 대한 RenderTransformOrigin을 제거 할 수 있습니까? 2. TranslateTransform Y = "0"은 무엇을 의미합니까? – George2