Mega Code Archive

 
Categories / C# / WPF
 

Object Transforms in WPF

<Window x:Class="WpfApplication1.ObjectMatrixTransforms"   xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"   xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"   Title="Object Matrix Transforms" Height="300" Width="400">   <StackPanel>     <Button Click="BtnClose_Click" Margin="15,0,15,5">Close</Button>     <Canvas Name="canvas1" ClipToBounds="True" Width="270" Height="280">     <TextBlock Canvas.Top="53" Canvas.Left="90">Original shape</TextBlock>     <Rectangle Canvas.Top="70" Canvas.Left="100" Width="50" Height="70" Stroke="Black" StrokeThickness="2"             StrokeDashArray="3,1" />     <Rectangle Name="rect" Canvas.Top="70" Canvas.Left="100" Width="50" Height="70" Fill="LightCoral"             Opacity="0.5" Stroke="Black" StrokeThickness="2">         <Rectangle.RenderTransform>           <MatrixTransform x:Name="matrixTransform" />         </Rectangle.RenderTransform>     </Rectangle>     </Canvas>   </StackPanel> </Window> //File:Window.xaml.cs using System; using System.Windows; using System.Windows.Controls; using System.Windows.Media; using System.Windows.Shapes; namespace WpfApplication1 {     public partial class ObjectMatrixTransforms : Window     {         public ObjectMatrixTransforms()         {             InitializeComponent();         }         public void BtnApply_Click(object sender, EventArgs e)         {             Matrix m = new Matrix();             m.M11 = 1;             m.M12 = 0;             m.M21 = 0;             m.M22 = 1;             m.OffsetX = 1;             m.OffsetY = 2;             matrixTransform.Matrix = m;         }     } }