2013-02-16 50 views
2

我正在开发针对Windows 8,桌面模式的c#touch应用程序,而且我无法找到最佳方法来执行此操作。我的问题是:我应该使用现有的Windows 7 Touch API c#还是可以使用新的多点触控c#API来开发Windows 8桌面应用程序?Windows 8桌面多点触控API

我知道Windows 8支持win7 touch api,只需要一些见解和反馈,如果仍然是最好的唯一方法。

有没有人有过这个问题的经验?

编辑:我发现这篇文章:http://software.intel.com/en-us/articles/touch-gestures,基本上UIElement暴露的方法,使触摸操纵。也许这是要走的路。有什么想法吗?

谢谢。

回答

2

Windows 8的API已经根据WM_POINTER消息的新API看到http://msdn.microsoft.com/en-us/library/hh454916(v=vs.85).aspx

Windows 7的API也有一些缺点,见http://the-witness.net/news/2012/10/wm_touch-is-totally-bananas/

+0

感谢Maf,但我认为指针API将与C++代码一起使用,并且我无法找到与c#类似的API。 – Ivo 2013-02-16 20:49:04

+1

然后,WPF 4 Multitouch API即将推出。微软刚刚在Windows 8 Metro应用程序和C++低级别事件中引入了新的多点触控API。 – Maf 2013-02-17 11:44:13

0

WM_TOUCHxxx消息不容易出现这样的问题:

http://social.msdn.microsoft.com/Forums/en-US/ce6d630a-b345-46ac-88ef-773704986d62/touch-responsiveness-issue-how-to-resolve-jagged-nonsmooth-lines?forum=winappswithcsharp

WM_TOUCHxxx和WM_POINTERxxx消息都会出现这个问题:

https://connect.microsoft.com/VisualStudio/feedback/details/903760/wpf-touch-services-are-badly-broken

如果你的C#桌面应用程序使用WPF,您唯一可行的办法是实现自己的TOUCHDEVICE能解决这些根本问题,因为它似乎微软已经决定WPF触摸不再重要。