SkewTransform Class

Definition

Represents a two-dimensional skew.

Equivalent WinUI class: Microsoft.UI.Xaml.Media.SkewTransform.

public ref class SkewTransform sealed : Transform
/// [Windows.Foundation.Metadata.Activatable(65536, Windows.Foundation.UniversalApiContract)]
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Static(Windows.UI.Xaml.Media.ISkewTransformStatics, 65536, Windows.Foundation.UniversalApiContract)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.Foundation.Metadata.WebHostHidden]
class SkewTransform sealed : Transform
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.Foundation.Metadata.WebHostHidden]
/// [Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
/// [Windows.Foundation.Metadata.Static(Windows.UI.Xaml.Media.ISkewTransformStatics, 65536, "Windows.Foundation.UniversalApiContract")]
class SkewTransform sealed : Transform
[Windows.Foundation.Metadata.Activatable(65536, typeof(Windows.Foundation.UniversalApiContract))]
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Static(typeof(Windows.UI.Xaml.Media.ISkewTransformStatics), 65536, typeof(Windows.Foundation.UniversalApiContract))]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.Foundation.Metadata.WebHostHidden]
public sealed class SkewTransform : Transform
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.Foundation.Metadata.WebHostHidden]
[Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
[Windows.Foundation.Metadata.Static(typeof(Windows.UI.Xaml.Media.ISkewTransformStatics), 65536, "Windows.Foundation.UniversalApiContract")]
public sealed class SkewTransform : Transform
Public NotInheritable Class SkewTransform
Inherits Transform
<SkewTransform .../>
Inheritance
Attributes

Windows 10 requirements

Device family
Windows 10 (introduced in 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (introduced in v1.0)

Examples

This example uses a SkewTransform to skew text. A skew, also known as a shear, is a transformation that stretches the coordinate space in a non-uniform manner. In this example, the two text strings are skewed -30 degrees and 30 degrees along the x-coordinate.

<Canvas Margin="30">
    <!-- Skew the text using a SkewTransform. -->
    <TextBlock FontSize="32"
               FontWeight="Bold" 
               Foreground="Maroon"
               Text="Skewed Text">
        <TextBlock.RenderTransform>
            <SkewTransform AngleX="-30" AngleY="0" />
        </TextBlock.RenderTransform>
    </TextBlock>

    <TextBlock Canvas.Top="60"
               FontSize="32"
               FontWeight="Bold" 
               Foreground="Maroon"
               Text="Skewed Text">
        <TextBlock.RenderTransform>
            <SkewTransform AngleX="30" AngleY="0" />
        </TextBlock.RenderTransform>
    </TextBlock>
</Canvas>

The text looks like this after the transform is applied:

Text with a skew transform applied

This example shows how you can access and modify a transform in code at runtime. Each time the rectangle is pressed, the skew is increased.

<Rectangle PointerPressed="IncreaseSkew"
           Width="50" Height="50" 
           Fill="RoyalBlue">
    <Rectangle.RenderTransform>
        <!-- If you give the transform a name 
             you can access it easily from code. -->
        <SkewTransform x:Name="mySkewTransform" />
    </Rectangle.RenderTransform>
</Rectangle>
public void IncreaseSkew(object sender, RoutedEventArgs e)
{
    mySkewTransform.AngleX = mySkewTransform.AngleX + 5;
}

Constructors

SkewTransform()

Initializes a new instance of the SkewTransform class.

Equivalent WinUI constructor: Microsoft.UI.Xaml.Media.SkewTransform.SkewTransform.

Properties

AngleX

Gets or sets the x-axis skew angle, which is measured in degrees counterclockwise from the y-axis.

Equivalent WinUI property: Microsoft.UI.Xaml.Media.SkewTransform.AngleX.

AngleXProperty

Identifies the AngleX dependency property.

Equivalent WinUI property: Microsoft.UI.Xaml.Media.SkewTransform.AngleXProperty.

AngleY

Gets or sets the y-axis skew angle, which is measured in degrees counterclockwise from the x-axis.

Equivalent WinUI property: Microsoft.UI.Xaml.Media.SkewTransform.AngleY.

AngleYProperty

Identifies the AngleY dependency property.

Equivalent WinUI property: Microsoft.UI.Xaml.Media.SkewTransform.AngleYProperty.

CenterX

Gets or sets the x-coordinate of the transform center.

Equivalent WinUI property: Microsoft.UI.Xaml.Media.SkewTransform.CenterX.

CenterXProperty

Identifies the CenterX dependency property.

Equivalent WinUI property: Microsoft.UI.Xaml.Media.SkewTransform.CenterXProperty.

CenterY

Gets or sets the y-coordinate of the transform center.

Equivalent WinUI property: Microsoft.UI.Xaml.Media.SkewTransform.CenterY.

CenterYProperty

Identifies the CenterY dependency property.

Equivalent WinUI property: Microsoft.UI.Xaml.Media.SkewTransform.CenterYProperty.

Dispatcher

Gets the CoreDispatcher that this object is associated with. The CoreDispatcher represents a facility that can access the DependencyObject on the UI thread even if the code is initiated by a non-UI thread.

Equivalent WinUI property: Microsoft.UI.Xaml.DependencyObject.Dispatcher.

(Inherited from DependencyObject)
Inverse

Gets the inverse transformation of this GeneralTransform, if possible.

Equivalent WinUI property: Microsoft.UI.Xaml.Media.GeneralTransform.Inverse.

(Inherited from GeneralTransform)
InverseCore

Implements the behavior for return value of Inverse in a derived or custom GeneralTransform.

Equivalent WinUI property: Microsoft.UI.Xaml.Media.GeneralTransform.InverseCore.

(Inherited from GeneralTransform)

Methods

ClearValue(DependencyProperty)

Clears the local value of a dependency property.

Equivalent WinUI method: Microsoft.UI.Xaml.DependencyObject.ClearValue.

(Inherited from DependencyObject)
GetAnimationBaseValue(DependencyProperty)

Returns any base value established for a dependency property, which would apply in cases where an animation is not active.

Equivalent WinUI method: Microsoft.UI.Xaml.DependencyObject.GetAnimationBaseValue.

(Inherited from DependencyObject)
GetValue(DependencyProperty)

Returns the current effective value of a dependency property from a DependencyObject.

Equivalent WinUI method: Microsoft.UI.Xaml.DependencyObject.GetValue.

(Inherited from DependencyObject)
ReadLocalValue(DependencyProperty)

Returns the local value of a dependency property, if a local value is set.

Equivalent WinUI method: Microsoft.UI.Xaml.DependencyObject.ReadLocalValue.

(Inherited from DependencyObject)
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback)

Registers a notification function for listening to changes to a specific DependencyProperty on this DependencyObject instance.

Equivalent WinUI method: Microsoft.UI.Xaml.DependencyObject.RegisterPropertyChangedCallback.

(Inherited from DependencyObject)
SetValue(DependencyProperty, Object)

Sets the local value of a dependency property on a DependencyObject.

Equivalent WinUI method: Microsoft.UI.Xaml.DependencyObject.SetValue.

(Inherited from DependencyObject)
TransformBounds(Rect)

Transforms the specified bounding box and returns an axis-aligned bounding box that is exactly large enough to contain it.

Equivalent WinUI method: Microsoft.UI.Xaml.Media.GeneralTransform.TransformBounds.

(Inherited from GeneralTransform)
TransformBoundsCore(Rect)

Provides the means to override the TransformBounds behavior in a derived transform class.

Equivalent WinUI method: Microsoft.UI.Xaml.Media.GeneralTransform.TransformBoundsCore.

(Inherited from GeneralTransform)
TransformPoint(Point)

Uses this transformation object's logic to transform the specified point, and returns the result.

Equivalent WinUI method: Microsoft.UI.Xaml.Media.GeneralTransform.TransformPoint.

(Inherited from GeneralTransform)
TryTransform(Point, Point)

Attempts to transform the specified point and returns a value that indicates whether the transformation was successful.

Equivalent WinUI method: Microsoft.UI.Xaml.Media.GeneralTransform.TryTransform.

(Inherited from GeneralTransform)
TryTransformCore(Point, Point)

Provides the means to override the TryTransform behavior in a derived transform class.

Equivalent WinUI method: Microsoft.UI.Xaml.Media.GeneralTransform.TryTransformCore.

(Inherited from GeneralTransform)
UnregisterPropertyChangedCallback(DependencyProperty, Int64)

Cancels a change notification that was previously registered by calling RegisterPropertyChangedCallback.

Equivalent WinUI method: Microsoft.UI.Xaml.DependencyObject.UnregisterPropertyChangedCallback.

(Inherited from DependencyObject)

Applies to

See also