WIndowsフォームでのスワイプについて

タグの編集
投稿者 イシ  (社会人) 投稿日時 2023/8/25 09:17:46
開発環境:VisualStudio2017(VB.Net/.NetFramework4.6.2)

あるWindowsフォームアプリでPanel内にユーザーコントロールを動的に追加し、
Panelには垂直スクロールバーを表示しています。
ユーザーコントロールの幅はPanelの幅に合わせているため、余白はありません。
ユーザーコントロールにはボタン、ラベル、テキストボックス等複数のコントロールがあります。

一部ユーザーよりPanelの任意の位置でスワイプによる垂直スクロールがしたいとの要望がありました。
(ブラウザは任意の位置をスワイプするとスクロールされるため、それをイメージ)

Windowsフォームでこのような動作を実装することは可能でしょうか?
もし可能であれば、どのように実装すればいいのかご教授いただけると幸いです。
投稿者 KOZ  (社会人) 投稿日時 2023/8/25 12:08:59
>(ブラウザは任意の位置をスワイプするとスクロールされるため、それをイメージ)

ということはタッチパネルですか?

Windows Forms はタッチパネルに対応していないので、

「TouchToolkit for WinForms」
https://www.grapecity.co.jp/developer/componentone/winforms/touchtoolkit

などのツールを入れる必要があります。

そうでなければ

「Windows タッチ ジェスチャ (Windows タッチ プログラミング)」
https://learn.microsoft.com/ja-jp/windows/win32/wintouch/multi-touch-gestures

「Windows Touch について」
https://learn.microsoft.com/ja-jp/windows/win32/wintouch/about-the-multi-touch-sdk

あたりを参考にゴリゴリ書いていくことになると思います。
投稿者 とくま  (社会人) 投稿日時 2023/8/25 13:19:08
スワイプという用語は正しいですか?タッチパネルやスマホでしか使わないと思いますが。
実際は、マウスホイールのスクロールだったりすると、話が根底から覆ります。
投稿者 イシ  (社会人) 投稿日時 2023/8/25 14:06:13
ご回答ありがとうございます。

すみません。説明が不足していました。
タッチパネルで使用したいとの要望です。マウスホイールではありません。

やはり対応していないのですね。
ご紹介いただいたURLを確認してみます。