この質問で述べたように、私Button
はWPFで開発しているスタイルを持っています。このスタイルでやりたいもう1つのことは、少しだけ縮小して、クリックされたときにクリックされているように見せることです。現在、変換コードは次のようになっています。Button
<Trigger Property="IsPressed" Value="True">
<Setter Property="RenderTransform">
<Setter.Value>
<TransformGroup>
<ScaleTransform ScaleX="0.98" ScaleY="0.98"/>
<SkewTransform AngleX="0" AngleY="0"/>
<RotateTransform Angle="0"/>
<TranslateTransform X="0" Y="0"/>
</TransformGroup>
</Setter.Value>
</Setter>
<Setter Property="Button.BitmapEffect">
<Setter.Value>
<OuterGlowBitmapEffect GlowColor="Green" GlowSize="10"></OuterGlowBitmapEffect>
</Setter.Value>
</Setter>
</Trigger>
だから、それはエキサイティングです。問題は、ボタンがある領域の左上に 関連付けられているScaleTransform
スケールです(つまり、ボタンの0,0座標に再スケーリングされているか、少なくともそれが私が想定していることです)。Image
Button
私の理解でTranslateTransform
は、それはオブジェクトのサイズに相対的な座標ではなく、ピクセル座標にあります。TranslateTransform
0.01、0.01のaを入力するButton
と、各方向に0.01 * sizeof(imagedimension)ピクセルではなく、xとyの両方で0.01ピクセルだけ移動します。Button
どうすればその相対変換を取得できますか。また、スタイルとしてどのように発生させることができますか。つまり、サイズごとに異なる計算を行う必要はありません。