Partilhar via


Windows 7 マルチタッチ イベントをWPFで使う方法

Windows API Code PackではマルチタッチAPIが公開されていませんが、P/Invokeを使ってマルチタッチ イベントをWPFで使うベタな方法を、Andrwew Eichacherが彼のブログで公開しています。

  1. User32.dllをインポートして、SetPropメソッドを宣言します。
  2. ロード時にイベントハンドラー(とその中のdelegate)を追加して、WindowInteropHelper をコンストラクトして、そのオブジェクトのHandleと"MicrosoftTabletPenServiceProperty"でSetPrepを呼び出します。
  3. StylusDown, StylusMove, StylusUpイベントハンドラーとそれぞれのコールバックを追加します。
  4. すると、それぞれのコールバックの中でStylusEventArgsからStylusDevice.Idを取得することができます。これがタッチIDです。複数のタッチがあるときは、複数回コールバックが呼び出されることになります。

お試しください。