TranslateTransform Class

[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]

Translates (moves) an object in the two-dimensional x-y coordinate system.

Inheritance Hierarchy

System..::.Object
  System.Windows..::.DependencyObject
    System.Windows.Media..::.GeneralTransform
      System.Windows.Media..::.Transform
        System.Windows.Media..::.TranslateTransform

Namespace:  System.Windows.Media
Assembly:  System.Windows (in System.Windows.dll)
XMLNS for XAML: Not mapped to an xmlns.

Syntax

Public NotInheritable Class TranslateTransform _
    Inherits Transform
public sealed class TranslateTransform : Transform
<TranslateTransform .../>

The TranslateTransform type exposes the following members.

Constructors

  Name Description
TranslateTransform Initializes a new instance of the TranslateTransform class.

Top

Properties

  Name Description
Dispatcher Gets the Dispatcher this object is associated with. (Inherited from DependencyObject.)
Inverse Gets the inverse of this transform, if it exists. (Inherited from Transform.)
X Gets or sets the distance to translate along the x-axis.
Y Gets or sets the distance to translate (move) an object along the y-axis.

Top

Methods

  Name Description
CheckAccess Determines whether the calling thread has access to this object. (Inherited from DependencyObject.)
ClearValue Clears the local value of a dependency property. (Inherited from DependencyObject.)
Equals(Object) Determines whether the specified Object is equal to the current Object. (Inherited from Object.)
Finalize Allows an object to try to free resources and perform other cleanup operations before the Object is reclaimed by garbage collection. (Inherited from Object.)
GetAnimationBaseValue Returns any base value established for a Windows Phone dependency property, which would apply in cases where an animation is not active. (Inherited from DependencyObject.)
GetHashCode Serves as a hash function for a particular type. (Inherited from Object.)
GetType Gets the Type of the current instance. (Inherited from Object.)
GetValue Returns the current effective value of a dependency property from a DependencyObject. (Inherited from DependencyObject.)
MemberwiseClone Creates a shallow copy of the current Object. (Inherited from Object.)
ReadLocalValue Returns the local value of a dependency property, if a local value is set. (Inherited from DependencyObject.)
SetValue Sets the local value of a dependency property on a DependencyObject. (Inherited from DependencyObject.)
ToString Returns a string that represents the current object. (Inherited from Object.)
Transform Transforms the specified point and returns the result. (Inherited from GeneralTransform.)
TransformBounds Transforms the specified bounding box and returns an axis-aligned bounding box that is exactly large enough to contain it. (Inherited from Transform.)
TryTransform Attempts to transform the specified point and returns a value that indicates whether the transformation was successful. (Inherited from Transform.)

Top

Fields

  Name Description
XProperty Identifies the X dependency property.
YProperty Identifies the Y dependency property.

Top

Remarks

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).

TranslateTransform matrix

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.

TextBlock using a TranslateTransform

Examples

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.

<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="https://schemas.microsoft.com/winfx/2006/xaml/presentation"
     xmlns:x="https://schemas.microsoft.com/winfx/2006/xaml"
xmlns:phone="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone"
xmlns:shell="clr-namespace:Microsoft.Phone.Shell;assembly=Microsoft.Phone"
     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;
}

Version Information

Windows Phone OS

Supported in: 8.1, 8.0, 7.1, 7.0

Platforms

Windows Phone

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

See Also

Reference

System.Windows.Media Namespace

Other Resources

Animations, motion, and output for Windows Phone