public override void OnNavigatedTo(INavigationParameters parameters) { base.OnNavigatedTo(parameters); var key = "Device"; if (!parameters.ContainsKey(key) || !(parameters[key] is DeviceViewModel device)) { return; } _device = device; _device.ErrorOccured += OnErrorOccured; _device.ConnectionStateChanged += OnConnectionStateChanged; _device.CommunicationQualityReceived += OnCommunicationQualityReceived; UUID = _device.UUID; Title = Name = _device.Name; IsConnected = _device.IsConnected; if (_device.ConnectCommand.CanExecute()) { _device.ConnectCommand.Execute(); } }
private void OnDeviceDiscovered(object sender, BLEDeviceEventArgs e) { foreach (var item in Devices) { if (item.UUID == e.Device.UUID) { return; } } var device = new DeviceViewModel(e.Device); Devices.Add(device); }