質問: VisualStudio2017 を利用してVB.NetにてWindowsFormアプリケーションを作成しております。 そのアプリケーションをタブレットで動かした際、タッチでスクロールできる部分とできない部分があり困っております。 BaseFormに触れた場合スクロールできているのですが、その上にパネルがあった際にスクロールされません。 パネルに指が触れている場合でもタッチスクロールするためにはどのような方法がありますでしょうか。 ご教授頂けると幸いです。
回答: 多分、MouseMoveのイベントで移動量を取得し、BaseFormのスクロールを自前で行うのが一番楽なのかなと思います。 この場合、慣性スクロールは行えないので、Formの他の場所でのスワイプ動作と異なる動きになると思います。 もしかしたら、Panelを継承しWndProcにてWM_GESTUREやWM_TOUCHなどのタッチ関連のメッセージを親Formへ投げなおすなど行えば、可能かもしれません。 タッチパネルに本格的に対応するのであれば、WPFにするのが一番だと思います。