日期:2014-05-16 浏览次数:21037 次
变换可以让UI元素扭曲旋转等,不用改变逻辑的几何形状和位置,就像是用放大镜看物体一样。
Transform类型的属性都可以应用变换。
主要分以下三种:RotateTransform、ScaleTransform、TranslateTransform,都继承自Transform类。
下面新建一个项目TransformTest来实战一下。
先在屏幕上放一个按钮:
接下来是给这个按钮加上旋转变化。
<Grid Background="{StaticResource ApplicationPageBackgroundThemeBrush}"> <Button Content="Button" HorizontalAlignment="Center" VerticalAlignment="Center" Height="200" Width="400"> <Button.RenderTransform> <RotateTransform Angle="45"></RotateTransform> </Button.RenderTransform> </Button> </Grid>
下面来看看ScaleTransform缩放变换。
<Grid Background="{StaticResource ApplicationPageBackgroundThemeBrush}"> <Button Content="Button" HorizontalAlignment="Center" VerticalAlignment="Center" Height="200" Width="400"> <Button.RenderTransform> <ScaleTransform ScaleX="2" ScaleY="1.5"></ScaleTransform> </Button.RenderTransform> </Button> </Grid>
同理,可以使用一下代码实现平移变换。
<Grid Background="{StaticResource ApplicationPageBackgroundThemeBrush}"> <Button Content="Button" HorizontalAlignment="Center" VerticalAlignment="Center" Height="200" Width="400"> <Button.RenderTransform> <TranslateTransform X="100" Y="-200"></TranslateTransform> </Button.RenderTransform> </Button> </Grid>
可以看见button的位置没有变化,变的是RenderTransform。这一点非常重要。
接下来看一下投射的概念,我们新建一张图片来做演示。
<Grid Background="{StaticResource ApplicationPageBackgroundThemeBrush}"> <Image HorizontalAlignment="Center" VerticalAlignment="Center" Height="400" Width="400" Source="头像.jpg"/> </Grid>
<Grid Background="{StaticResource ApplicationPageBackgroundThemeBrush}"> <Image HorizontalAlignment="Center" VerticalAlignment="Center" Height="400" Width="400" Sou