我正在开发一个在嵌入式设备上运行的 WPF 应用程序(.NET Standard 4 for Embedded)。它附加了一大堆硬件,在我测试时会妨碍我,所以我创建了一个 DummyHardware 接口,当我运行单元测试或在我的开发 PC 上独立运行时,它除了打印日志消息之外什么都不做。
到目前为止,一切都很好。但是:该设备有一个轮询的 4 键键盘。我的虚拟键盘类在等待按下键时进入无限循环,因为没有键可以按下:-) 所以我想,“好吧,我会轮询键盘看看是 1,2,3 还是4 被按下”。但我得到了例外
调用线程必须是 STA...
当我打电话时Keyboard.IsKeyDown( Key.D1 )
。键盘轮询发生在一个单独的线程中(以与其余硬件的通常较慢的串行通信分离)。关于如何进行的任何想法?调用?
注意:一种替代方法是跳过虚拟硬件上的“等待键”测试,但是我不知道按下了哪个键,并且依赖它的以下代码将无法正常运行。玉。