ScaleTransform in LayoutTransform funktioniert nicht, aber mit RenderTransform
Ich versuche, in meiner Anwendung zwei Dinge zu tun.
1. Bild vergrößernAble mit @ zu tRenderTransform
. aber müssen in @ erreichLayoutTransform
ermöglichenScrollviewer
.
Arbeiten
<Image.RenderTransform>
<ScaleTransform ScaleX="{Binding ScaleX}" ScaleY="{Binding ScaleY}" />
</Image.RenderTransform>
Funktioniert nich
<Image.LayoutTransform>
<ScaleTransform ScaleX="{Binding ScaleX}" ScaleY="{Binding ScaleY}" />
</Image.LayoutTransform>
2. Bild drehenworks mit beidenScaleTransform
undRenderTransform
aber brauche es mitScaleTransform
erhaltenScrollViewer
Problem ist inScaleTransform
mitLayoutTransform
<Image.LayoutTransform>
<TransformGroup>
<ScaleTransform ScaleX="{Binding ScaleX}" ScaleY="{Binding ScaleY}" />
<RotateTransform Angle="{Binding RotateAngle}"/>
</TransformGroup>
</Image.LayoutTransform>
Nicht auch beides erreichenScaleTransform
undRotateTransform
mitScrollViewer
Ich habe es mit @ versucCanvas
<Canvas.LayoutTransform>
<TransformGroup>
<ScaleTransform ScaleX="{Binding ScaleX}" ScaleY="{Binding ScaleY}" />
<RotateTransform Angle="{Binding RotateAngle}"/>
</TransformGroup>
</Canvas.LayoutTransform>
Differentes Verhalten beim Drehen, aber beide Funktionen funktionieren, aberScrollViewer
nicht scrollen.
Tried das gleiche mitViewBox
rotate funktioniert nicht mit ScrollViewer Zoom.
Full Code below
<ScrollViewer>
<Viewbox RenderTransformOrigin="0.5,0.5" Height="Auto" Width="Auto" ScrollViewer.CanContentScroll="True">
<Viewbox.LayoutTransform>
<TransformGroup>
<ScaleTransform ScaleX="{Binding ScaleX}" ScaleY="{Binding ScaleY}" />
<RotateTransform Angle="{Binding RotateAngle}"/>
</TransformGroup>
</Viewbox.LayoutTransform>
<Image RenderTransformOrigin="0.5,0.5" >
<Image.Source>
<BitmapImage UriSource="{Binding ImagePath}" ScrollViewer.CanContentScroll="True"></BitmapImage>
</Image.Source>
</Image>
</Viewbox>
</ScrollViewer>
Anyone kann mir mit Vorschlägen helfen.
Arbeitslösung für mich vorgeschlagen von 'GazTheDestroyer'
XAML<Image RenderTransformOrigin="0.5,0.5" Stretch="None" >
<Image.LayoutTransform>
<TransformGroup>
<ScaleTransform ScaleX="{Binding ScaleX}" ScaleY="{Binding ScaleY}" />
<RotateTransform Angle="{Binding RotateAngle}"/>
</TransformGroup>
</Image.LayoutTransform>
<Image.Source>
<BitmapImage UriSource="{Binding ImagePath}" ScrollViewer.CanContentScroll="True"></BitmapImage>
</Image.Source>
</Image>