マルチタッチジェスチャーで移動またはサイズ変更できるウィンドウを作成しようとしています。このようにしてみました。ウィンドウの TouchDown イベントをキャプチャし、すべてのアクティブな TouchDevices をリストに保存して、アクティブな TouchDevices を確認します。TouchDevices の更新および非アクティブ化イベントをキャッチして、いつ移動され、いつ非アクティブ化されたかを把握します。Window の Left プロパティと Top プロパティ、および TouchDevice が開始された位置を保存し、Updated イベントが呼び出されるたびに、TouchDevice の新しい位置に相対的な新しい位置に Window を移動します。これは、指を動かすと機能します。しかし、指を動かさないと (またはほんの少しでも)、ウィンドウが突然揺れ始め (無秩序に動き)、すぐに画面の外に消えてしまいます。
ここでの問題は、TouchDeviceの関数「GetTouchPoint」がウィンドウに関連する相対座標のみを提供することだと思います(ウィンドウ参照の代わりにパラメーターnullを設定しても)。また、ウィンドウが移動するため、(移動しない) TouchDevice の相対位置も変化します。そのため、調査を行いましたが、タッチ デバイスの画面座標を特定する方法を見つけることができませんでした。
だから、TouchDeviceの絶対座標を取得する方法を誰かが助けてくれることを願っています. または、タッチでウィンドウを「DragMove」する別の方法を見つけるのに役立ちます(DragMoveを試しましたが、TouchDownではなくマウスクリックでのみ機能します)また、2つのタッチデバイスがアクティブなときにウィンドウのサイズを変更したいので、私も必要ですそれ以外の場合は同じ効果が発生するため、絶対座標。