2009-06-26 8 views
1

MouseDevice.GetPosition(null)によって返されるSystem.Windows.Pointを、WPFウィンドウを基準にして画面座標に変換する方法を教えてください。WPF MouseDevice.GetPosition(null)をスクリーン座標に変換するには?

このハック(How to get control location in screen coordinate system)ですが、ほぼ2歳以上であり、特定の制約の下でのみ動作します。その記事で説明しているように、これは正しいことが簡単ではないので、可能であればWPFメソッドに頼りたいと思います。

私は.NET Framework 4.0を使用していますので、以前の.NET Frameworkのバージョンとの下位互換性については心配していません。

答えて

4

あなたはこの必要があります:あなたがコントロールの上にそれを呼び出すと、それを渡すと

http://msdn.microsoft.com/en-us/library/system.windows.media.visual.pointtoscreen.aspx

を(0、0)、それはあなたのスクリーン座標でのコントロールの左上隅を与えます。

または(ActualWidth、ActualHeight)渡すことができますし、右下隅が表示されます。

+0

明らかに私はそれを逃した! :-) –

関連する問題