public JoystickViewModel(DeviceViewModel deviceViewModel, IMoCoBusProtocolService protocolService) { _deviceViewModel = deviceViewModel; _protocolService = protocolService; StartJoystickCommand = new ReactiveCommand<Point>(); StartJoystickCommand.Subscribe(StartJoystick); StopJoystickCommand = new ReactiveCommand(); StopJoystickCommand.Subscribe(StopJoystick); MoveJoystickCommand = new ReactiveCommand<Point>(); MoveJoystickCommand.Sample(TimeSpan.FromMilliseconds(60)).Throttle(TimeSpan.FromMilliseconds(50)).Subscribe(MoveJoystick); StartSliderCommand = new ReactiveCommand<float>(); StartSliderCommand.Subscribe(StartSlider); StopSliderCommand = new ReactiveCommand(); StopSliderCommand.Subscribe(StopSlider); MoveSliderCommand = new ReactiveCommand<float>(); MoveSliderCommand.Sample(TimeSpan.FromMilliseconds(60)).Throttle(TimeSpan.FromMilliseconds(50)).Subscribe(MoveSlider); }