windows-8 – Windows 8 WinRT KeyboardCapabilities.KeyboardPresent始终为true

前端之家收集整理的这篇文章主要介绍了windows-8 – Windows 8 WinRT KeyboardCapabilities.KeyboardPresent始终为true前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我们使用KeyboardCapabilities.KeyboardPresent来测试键盘是否连接到设备:

bool hasKeyboard = new KeyboardCapabilities().KeyboardPresent == 1;

不幸的是,无论是否连接了蓝牙键盘,它始终为TRUE.我们尝试使用以下硬件:

Dell Vostro 470是一款带有无线蓝牙键盘的台式电脑,具有电源开/关选项.
http://www.dell.com/in/business/p/vostro-470/pd

三星700T笔记本(板岩)
http://www.samsung.com/uk/consumer/pc-peripherals/slate-pc/slate-pc/XE700T1A-A01UK

关闭键盘,蓝牙,从设备列表中删除键盘等没有帮助,KeyboardCapabilities.KeyboardPresent始终返回1.

我们在这里遗漏了什么,或者是否有我们应该使用的API来检测这些变化?

解决方法

我的平板电脑上有相同的行为.可能是个bug …

更复杂的解决方案是枚举设备容器.它会告诉您是否连接了任何键盘.有关更多详细信息,请参阅Device enumeration sample.

猜你在找的Windows相关文章