【发布时间】:2016-09-27 20:50:51
【问题描述】:
我有一个 UWP 应用程序,我正在尝试在 UI 元素上启用操作事件。我订阅了 ManipulationStarted 事件,但意识到它没有触发。然后,根据一些建议,我尝试在 Grid 上设置 IsManipulationEnabled 属性,但开始出现编译错误,提示找不到 IsManipulationEnabled 属性。我错过了什么吗?
【问题讨论】:
我有一个 UWP 应用程序,我正在尝试在 UI 元素上启用操作事件。我订阅了 ManipulationStarted 事件,但意识到它没有触发。然后,根据一些建议,我尝试在 Grid 上设置 IsManipulationEnabled 属性,但开始出现编译错误,提示找不到 IsManipulationEnabled 属性。我错过了什么吗?
【问题讨论】:
IsManipulationEnabled 是 WPF 属性。为了在 UWP 中获取操作事件,您必须设置 ManipulationMode 属性。
来自ManipulationMode 页面上的备注部分:
您必须将 ManipulationMode 设置为 System 或 None 以外的值 如果要处理 ManipulationStarted 等操作事件 来自应用代码中的 UI 元素。
例如
ManipulationMode = ManipulationModes.Scale
| ManipulationModes.TranslateX
| ManipulationModes.TranslateY
| ManipulationModes.TranslateInertia;
【讨论】: