我有一个运行在 Windows 8.1 平板上的 WPF .NET 4.6 应用程序,最近几天我一直在努力使应用程序变得触摸友好以使其正常工作。我的主要问题与焦点有关,这会影响到我的应用程序中的多个控件。例如:
- 文本框:有时需要双击或三击才能获得输入焦点,它们确实进入了鼠标悬停状态,但光标不在那里;
- 组合框:需要几次点击才能打开它,并且一旦触摸某个项目以选择它,则组合框保持打开状态并突出显示新选择的项目;
- 按钮:需要点击几次才能运行连接的命令并保持在鼠标悬停状态;
- 键盘支持。
在寻找解决方案时,我尝试了几种方法,每种方法都有自己的缺点:
- 移除整个应用程序的平板支持(从这里获取)。这个解决了上述大部分焦点问题,但使滚动(以及我还没有发现的其他与平板相关的功能)无法使用。
- 在需要时明确激活键盘(示例在此)。焦点问题仍然存在,滚动按预期工作
- 我还尝试删除所有样式,并在来自不同制造商的两个不同平板电脑上测试了一切,但没有成功。
最近微软宣布“触摸更好”,但我找不到任何关于如何最好地处理这个主题的官方文档。
有什么建议可以使我的应用程序在触摸方面更好地工作,将是一个很大的帮助。