2016-05-16 11 views
0

Ich möchte wissen, wie man die Formen, die auf Inkcanvas in WPF gezeichnet werden, dreht und bewegt. Ich benutze VS 2015 und arbeite an einem Projekt namens WhiteBoard. Auf diesem Board verwende ich Inkcanvas, mit dem man Formen wie Kreise, Rechtecke usw. zeichnen und löschen kann.WPF Inkcanvas Zeichnen und Drehen von Formen

Vielen Dank im Voraus.

Antwort

0

Sie können die gesamte InkCanvas drehen oder verschieben. Prüfen Sie dies:

<Window.Resources> 
     <Storyboard x:Key="RotateTransformStoryboard"> 
      <DoubleAnimation Storyboard.TargetName="inkCanvas" From="0" To="359" BeginTime="00:00:00" Duration="00:00:05" 
          RepeatBehavior="1" 
          Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[0].(RotateTransform.Angle)" > 
      </DoubleAnimation> 

     </Storyboard> 
    </Window.Resources> 
    <Window.Triggers> 
     <EventTrigger RoutedEvent="Button.Click"> 
      <BeginStoryboard Storyboard="{StaticResource RotateTransformStoryboard}"/> 
     </EventTrigger> 
    </Window.Triggers> 
    <Grid> 
     <Grid.RowDefinitions> 
      <RowDefinition Height="*"/> 
      <RowDefinition Height="Auto"/> 
     </Grid.RowDefinitions> 


     <InkCanvas Grid.Row="0" x:Name="inkCanvas" RenderTransformOrigin="0.5,0.5"> 
      <InkCanvas.RenderTransform> 
       <TransformGroup> 
        <RotateTransform Angle="0" /> 
       </TransformGroup> 
      </InkCanvas.RenderTransform>  
     </InkCanvas> 
     <Button x:Name="btn1" Content="transform" Grid.Row="1" Height="30" /> 
    </Grid> 
+0

Hey Newton Zou, i donot wollen die gesamte InkCanvas drehen, statt dessen möchte ich die InkCanvas Kind drehen, Maus, wie nach der Form wählen und drehen Sie das shape.Please dieses Problem überprüfen und stelle mir eine bessere Lösung zur Verfügung. Vielen Dank im Voraus –

+0

Wenn die Kinder sind einige Steuerelemente in Code wie Schaltflächen und Textbox hinzugefügt, kann ausgewählt werden und drehen. Aber wenn sie vom Benutzer in der Laufzeit gezeichnet werden, kann es nicht. Sie müssen selbst implementieren. –

+0

Ok Danke für die Hilfe. –