c# - 如何访问直接操作界面

标签 c# windows-8

我正在研究 Windows 8 桌面应用程序中的直接操作支持。我在网上找到了一些描述 C++ 中一些概念的示例,但我是一名 C# 程序员。

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

Where are the interfaces located?

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

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

最佳答案

MSDN 包含涵盖 DirectManipulation 的文档.接口(interface)文档引用了可用于生成互操作程序集的接口(interface)定义 (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 中的多点触控操作事件
  • 触摸和响应
  • 多点触控惯性

更新: 要创建程序集,请将 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

关于c# - 如何访问直接操作界面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16572006/

相关文章:

c# - 查找任何具有自定义前缀 HtmlAgilityPack 的互文

c# - c#语言中的字符串压缩

c# - C# 中生成的文本框上的鼠标单击事件

C# Windows 应用商店网格应用 (xaml) 模板

c# - Resharper 的 "Object allocation (evident)"是什么意思?

c# - 如何使用 model.id 动态生成 HTML 属性值?

javascript - Windows 8 Metro 应用程序对话框更改字体颜色

c# - Windows 8 是否对应用程序有更严格的权限?

xaml - 在 Windows 8 中移动和调整 Canvas 内的矩形

WPF 应用程序卡在 Windows 8 触摸设备上