2009-03-06 12 views
3

タイトルバーとクロムがオフになっているWPFアプリケーションを作成しました。私はいくつかの点でそれがクロムのように振る舞うだろうという考えで、アプリ全体の周りに国境を持っています。私がやろうとしている最初のことは、マウスがクリックされたときにマウスの動きをキャプチャしてマウスが動き出すようにすることです。問題は、マウスがあまりにも速く動くとウィンドウを離れてしまい、マウスが動かなくなってしまうことです。私はマウスの速度に関係なく問題なく通常のWinFormでこれを行うことができました。より効率的にこれを行う方法はありますか、またはmousemoveのポーリングを調整することは可能でしょうか?ボーダー以外のコンテナはおそらくより優れた性能を発揮しますか?WPF MouseMoveイベントポーリング

答えて

7

ウィンドウの左クリックイベントハンドラでMe.DragMoveを試してください。ほとんどのカスタムソリューションよりもはるかに優れています。

+0

これはうまく機能しました。 – CodeMonkey1313

4

ユーザーがクリックすると、マウスをキャプチャする必要があります(Mouse.Capture参照)。こうすることで、マウスカーソルが要素上にあるかどうかに関係なく、マウスイベントを取得できます。