スライダーを使用して、キャンバス上の円のサイズを変更したいと思います。この円は、コードビハインドで行ったドラッグアンドドロップ操作でキャンバス上を移動できるため、位置は固定されていません。
スライダーの値を楕円の高さと幅にバインドしました。残念ながら、スライダーを使用すると、操作中に円のサイズが変更され、その左上の点 (実際には、円が置かれている長方形の左上の点) が同じままになります。
操作中に中心点が一定になるようにサイズを変更したいと思います。XAML でこれを行う簡単な方法はありますか? ところで、私はすでに ScaleTransform を試しましたが、私が望んでいたことはうまくいきませんでした。
本当にありがとう!:-)
1月
<Canvas x:Name="MyCanvas">
<!-- this is needed for some adorner stuff I do in code behind -->
<AdornerDecorator Canvas.Left="10"
Canvas.Top="10">
<Ellipse x:Name="myEllipse"
Height="{Binding Path=Value, ElementName=mySlider}"
Width="{Binding Path=Value, ElementName=mySlider}"
Stroke="Aquamarine"
Fill="AliceBlue"
RenderTransformOrigin="0.5 0.5">
<Ellipse.RenderTransform>
<RotateTransform Angle="{Binding Path=Value, ElementName=myRotationSlider}" />
</Ellipse.RenderTransform>
</Ellipse>
</AdornerDecorator>
<Slider x:Name="mySlider"
Maximum="100"
Minimum="0"
Width="100"
Value="10"
Canvas.Left="150"
Canvas.Top="10" />
<Slider x:Name="myRotationSlider"
Maximum="360"
Minimum="0"
Width="100"
Value="0"
Canvas.Left="150"
Canvas.Top="50" />
</Canvas>