如何访问Direct Manipulation接口

时间:2013-05-15 18:04:07

标签: c# windows-8

我正在调查Windows 8桌面应用程序中的Direct Manipulation支持。我在网上发现了一些用C ++描述一些概念但我是C#程序员的样本。

我想访问IDirectManipulationManager,IDirectManipulationCompositor等的COM互操作接口。但是,我找不到包含这些接口的程序集。

  

接口在哪里?

我安装了VS 2012 utlimate并安装了Windows 8 SDK。是否还需要一些其他安装才能使用直接操作?

此外,如果有人可以为我提供更多代码示例(英特尔开发人员网站除外)以进行直接操作,我们将不胜感激!

1 个答案:

答案 0 :(得分:4)

MSDN包含涵盖DirectManipulation的文档。界面文档引用了可用于生成互操作程序集的接口定义(DirectManipulation.idl)。安装Windows 8 SDK后,您将在%ProgramFiles(x86)%\Windows Kits\8.0\Include\um

中找到DirectManipulation.idl

您可能需要先检查WPF的操作事件,看它们是否适合您的场景。

Sample Code: Support multi-touch in WPF

另外,在MSDN杂志上搜索以下文章,了解有关WPF操作事件的更多信息(遗憾的是,我目前无法链接它们):

  • WPF中的多点触控操作事件
  • 触摸和回复
  • Multi-Touch Inertia

<强>更新 要创建程序集,请将DirectManipulation.idl复制到临时文件夹。 打开Visual Studio或SDK命令提示符。

cd到复制idl的临时文件夹。

运行midl directmanipulation.idl /tlb directmanipulation.tlb以生成类型库。

运行directmanipulation.tlb /out:DirectManipulation.dll以生成可在Visual Studio中引用的程序集。

有关MIDL和TLBImp的更多信息,请参阅

MIDL命令行参考
msdn.microsoft.com/en-us/library/windows/desktop/aa367372(V = vs.85)的.aspx

MSDN:将类型库导入为程序集
msdn.microsoft.com/en-US/library/xwzy44e4(V = VS.80)的.aspx