Платформа и приложение: я использую шаблон MVVM в приложении WPF. Приложение после развертывания будет доступно только через сенсорный экран. Как показывает шаблон mvvm, я использовал привязки команд к ICommands и прикрепил RelayCommands.
<ToggleButton Grid.Row="1"
Padding="5 4 4 4"
Command="{Binding HomeCommand}"
IsChecked="{Binding isCheckedHomeButton, Mode=TwoWay}"
Style="{StaticResource SideMenuToggleButton}"
Content="{StaticResource FontAwesomeIconHome}"/>
Проблема: Если кнопка нажата или нажата в начале, RelayCommands сработают и будут выполнены правильно. Через некоторое время (обычно 2 минуты) приложение все еще распознает, была ли нажата кнопка, но не распознает, была ли нажата кнопка.
Что я тестировал до сих пор: Windows Application EventLog не имеет связанных записей.
Я добавил обработчики событий, несмотря на шаблон MVVM Command, чтобы обеспечить правильное срабатывание событий TouchDown. Приложение правильно отреагировало на все подключенные сенсорные входы.
PS C:\Temp\DebugLog> Get-Content .\testLog.txt -Wait
MouseClickDetected --- 30.10.2019 13:00:20
MouseClickDetected --- 30.10.2019 13:01:10
MouseClickDetected --- 30.10.2019 13:01:11
MouseClickDetected --- 30.10.2019 13:01:11
MouseClickDetected --- 30.10.2019 13:01:11
TOUCHDOWN Detected --- 30.10.2019 13:11:51
TOUCHDOWN Detected --- 30.10.2019 13:11:51
TOUCHDOWN Detected --- 30.10.2019 13:11:52
TOUCHDOWN Detected --- 30.10.2019 13:11:52
TOUCHDOWN Detected --- 30.10.2019 13:11:52
TOUCHDOWN Detected --- 30.10.2019 13:11:52
Таким образом, проблема возникает только с привязкой команд.
Как я могу выяснить, почему связанные команды не запускаются касанием? Повезло ли вам, что сенсорные входы сработали в первую очередь?