private void OnServiceSelected(object sender, SelectionChangedEventArgs e) { if (e.AddedItems.Count > 0) { selectedService = (GattDeviceService)((Entity)e.AddedItems[0]).Item; enuminator.ListTitle = MicroBits.UUIDToName(selectedService.Uuid) + " Characteristics"; ShowCharacteristics(selectedService); } }
private void ListServices_SelectionChanged(object sender, SelectionChangedEventArgs e) { GattDeviceService service = (GattDeviceService)listServices.SelectedItem; var characteristics = service.GetAllCharacteristics(); if (characteristics.Count > 0) { foreach (var characteristic in characteristics) { if (MicroBits.UUIDToName(characteristic.Uuid) != null) { listCharacteristic.Items.Add(characteristic); } } showChracteristicsList(); } else { Console.WriteLine("No services found"); } }
private async void loadServiceList() { selectedBluetoothLEDevice = await BluetoothLEDevice.FromIdAsync(selectedDeviceInformation.Id); var services = selectedBluetoothLEDevice.GattServices; if (services.Count > 0) { foreach (var service in services) { if (MicroBits.UUIDToName(service.Uuid) != null) { listServices.Items.Add(service); } } showServiceList(); } else { Console.WriteLine("No services found"); } }
public void ShowCharacteristics(GattDeviceService service) { List <Entity> listCharacteristics = new List <Entity>(); var characteristics = bluetoothLE.GetCharacteristics(service); if (characteristics != null) { foreach (var characteristic in characteristics) { if (MicroBits.UUIDToName(characteristic.Uuid) != null) { listCharacteristics.Add(new Entity(MicroBits.UUIDToName(characteristic.Uuid), typeof(GattCharacteristic), characteristic)); } } enuminator.listItems.ItemsSource = listCharacteristics; enuminator.listItems.SelectionChanged -= OnServiceSelected; enuminator.listItems.SelectionChanged += OnCharacteristicSelected; } else { Console.WriteLine("No Services found"); } }
public async void ShowServices(DeviceInformation deviceInformation) { List <Entity> listServices = new List <Entity>(); var services = await bluetoothLE.GetServices(deviceInformation); if (services != null) { foreach (var service in services) { if (MicroBits.UUIDToName(service.Uuid) != null) { listServices.Add(new Entity(MicroBits.UUIDToName(service.Uuid), typeof(GattDeviceService), service)); } } enuminator.listItems.ItemsSource = listServices; Address = "/i5/micro:bit/" + Index; enuminator.listItems.SelectionChanged -= OnDeviceSelected; enuminator.listItems.SelectionChanged += OnServiceSelected; } else { Console.WriteLine("No Services found"); } }