2015-10-05 69 views
2

我被这段代码困住了,我无法找到如何在代码后面获得此Path元素的角度,请帮助我!当它的父元素“CamGrid”旋转时,我的目的是检查'vectorCapture'的角度。十分感谢! 这里是我的XAML代码:如何在Windows Phone Silverlight中获取UIElement的角度?

<phone:PhoneApplicationPage.Resources> 
    <Storyboard x:Name="RotateCamera" RepeatBehavior="Forever"> 
     <DoubleAnimation 
      Duration="0:0:10" To="360" 
      Storyboard.TargetProperty="(UIElement.RenderTransform).(CompositeTransform.Rotation)" 
      Storyboard.TargetName="CamGrid" 
      d:IsOptimized="True" /> 
    </Storyboard> 
</phone:PhoneApplicationPage.Resources> 
<!--LayoutRoot is the root grid where all page content is placed--> 
<Grid x:Name="LayoutRoot" Background="Transparent"> 
    <Grid Name="CamGrid" 
      RenderTransformOrigin=".5, .5"> 
     <Grid.RenderTransform> 
      <CompositeTransform x:Name="CamGridCompositeTransform" /> 
     </Grid.RenderTransform> 
     <Path Data="M4,16h1.6V5.6H16V4H4V16z M5.6,27.2H4v12h12v-1.6H5.6V27.2z M37.6,16h1.6V4h-12v1.6h10.4V16z M9.6,20.8H0v1.6 
    h9.6V20.8z M20.8,43.2h1.6v-9.6h-1.6V43.2z M37.6,37.6H27.2v1.6h12v-12h-1.6V37.6z M20.8,9.6h1.6V0h-1.6V9.6z M33.6,20.8v1.6h9.6 
    v-1.6H33.6z M33.6,20.8" 
       Name="vectorCapture" 
       Fill="{Binding Path=LocalizedResources.ForeColor2, 
      Source={StaticResource LocalizedStrings}}" 
       Stroke="{Binding Path=LocalizedResources.ForeColor2, 
      Source={StaticResource LocalizedStrings}}" 
       StrokeThickness="2" 
       Height="64" 
       Width="64" 
       Margin="0,0,0,0" 
       Stretch="Uniform" 
       VerticalAlignment="Bottom"/> 
    </Grid> 
</Grid> 

回答

0

我解决我的问题,这是我的解决方案:

CompositeTransform CamCT = new CompositeTransform(); 
CamCT = (CompositeTransform)CamGrid.RenderTransform; 
//then get angle by CamCT.Rotation 
+0

它在的Lumia设备的工作吗? –

+0

是的,我试过,它的工作。 – iamatsundere181

+0

好吧,其实我想要相同的代码,因为我正在从图像制作颜色选择器,所以我需要 –

相关问题