我正在寻找一些关于在 C# 2.0 应用程序中处理 WM 6.5 手势的建议。目前,平移和滚动之类的东西正在干扰 Tab Control 和列表视图等控件。
有没有办法使用 C# 2.0 捕获这些并处理它们?我一直在查看 MSDN 包装器等,但这些是使用 .Net 3.5 构建的,无法与我的应用程序一起使用,而且我不断收到错误。
提前感谢您的帮助,
莫里斯
我正在寻找一些关于在 C# 2.0 应用程序中处理 WM 6.5 手势的建议。目前,平移和滚动之类的东西正在干扰 Tab Control 和列表视图等控件。
有没有办法使用 C# 2.0 捕获这些并处理它们?我一直在查看 MSDN 包装器等,但这些是使用 .Net 3.5 构建的,无法与我的应用程序一起使用,而且我不断收到错误。
提前感谢您的帮助,
莫里斯
为什么不使用 coredll.dll 中的“DisableGestures”功能?
[DllImport("coredll.dll")]
private static extern bool DisableGestures(IntPtr p_ipHwnd, UInt64 p_uiTGFflags, uint p_uiScope);
private const UInt64 TGF_GID_BEGIN = 0x0000000000000002;
private const UInt64 TGF_GID_END = 0x0000000000000008;
private const UInt64 TGF_GID_PAN = 0x0000000000000100;
private const UInt64 TGF_GID_ROTATE = 0x0000000000000200;
private const UInt64 TGF_GID_SCROLL = 0x0000000000001000;
private const UInt64 TGF_GID_HOLD = 0x0000000000002000;
private const UInt64 TGF_GID_SELECT = 0x0000000000004000;
private const UInt64 TGF_GID_DOUBLESELECT = 0x0000000000008000;
private const UInt64 TGF_GID_LAST = 0x0000000000008000;
private const UInt64 TGF_GID_MAX = 0x8000000000000000;
private const UInt64 TGF_GID_ALL = 0xFFFFFFFFFFFFFFFF;
private const uint TGF_SCOPE_WINDOW = 0x0000;
private const uint TGF_SCOPE_PROCESS = 0x0001;
public frmMain()
{
InitializeComponent();
DisableGestures(null, TGF_GID_ALL, TGF_SCOPE_PROCESS);
}
您也可以尝试仅对一个窗口禁用手势。