1

二次画像を子として持つ UserControl があります。この画像は UserControl の下部にあり、その半分が切り取られています (たとえば、コントロールの高さは 400、画像の高さは 200 で、y=300 に設定されています)。

ここで、画像を回転すると、最初と同じようにまだ切り取られています。90 度回転したときのように、幅が 100 ピクセルしかない画像が突然表示されます。

UserControl の境界のために作成された元のクリッピングが永久に適用されるようです。

この問題を解決するにはどうすればよいですか? 私の問題を理解できるように説明したことを願っています;)

4

2 に答える 2

6

画像をどのように回転させていますか?RenderTransformを使用して回転している場合、WPFは画面に既に表示されているものを再レンダリングせず、単にピクセルを回転させます。

代わりに、LayoutTransformを使用して画像を回転します。これにより、WPFは、それが占める新しい領域を指定してコントロールを再レンダリングするように強制されます。これにより、表示されるクリッピングが排除されます。

于 2010-01-29T16:01:56.603 に答える
0

InvalidateMeasure()render Transform を適用した後に呼び出すこともできます。

于 2010-07-22T08:43:18.207 に答える