Translates (moves) an object in the two-dimensional x-y coordinate system.
Public NotInheritable Class TranslateTransform _ Inherits Transform
Dim instance As TranslateTransform
public sealed class TranslateTransform : Transform
<TranslateTransform .../>
The local 0,0 for an object can be offset on a Canvas using Canvas..::.Left and Canvas..::.Top, but this does not count as a transform; the object retains its own local 0,0 in this case for transform purposes.
Multiple transforms can be applied with a TransformGroup. Custom transforms can be created with a MatrixTransform.
TranslateTransform defines an axis-aligned translation along the x and y axes. The following illustration shows the transformation matrix for a translation by offset (dx, dy).
Transforms can alter the display of text in your application to create a decorative effect. The following illustration shows text translated, or moved, along the x and y axes.
The following example uses a TranslateTransform to offset text. In this example, a slightly offset copy of text below the primary text creates a shadow effect.
Run this sample
<Canvas> <!-- Offset the text using a TranslateTransform. --> <TextBlock FontFamily="Verdana" FontSize="32" FontWeight="Bold" Foreground="Black" Text="Translated Text"> <TextBlock.RenderTransform> <TranslateTransform X="2" Y="2" /> </TextBlock.RenderTransform> </TextBlock> <TextBlock FontFamily="Verdana" FontSize="32" FontWeight="Bold" Foreground="Coral" Text="Translated Text"/> </Canvas>
The example below shows how to increase the X and Y property values of a TranslateTransform applied to a Rectangle every time the Rectangle is clicked.
<Canvas xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Width="200" Height="200"> <Rectangle MouseLeftButtonDown="handleMouseButtonDown" Width="50" Height="50" Fill="RoyalBlue"> <Rectangle.RenderTransform> <!-- If you give the transform a name you can access it easily from code. --> <TranslateTransform x:Name="myTranslateTransform" /> </Rectangle.RenderTransform> </Rectangle> </Canvas>
private void handleMouseButtonDown(object sender, EventArgs e) { // Increase the X and Y properties. myTranslateTransform.X = myTranslateTransform.X + 15; myTranslateTransform.Y = myTranslateTransform.Y + 15; }
For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.