protected override async void OnAppearing() { items = await domoticzManager.GetDeviceList("utility"); var lstView = new ListView(); lstView.RowHeight = 60; this.Title = "System"; lstView.ItemTemplate = new DataTemplate(typeof(CustomSystemCell)); lstView.GroupHeaderTemplate = new DataTemplate(typeof(CustomSystemGroupedCell)); if (items.result.Count > 0) { var grouped = new ObservableCollection <DomoticzDeviceType>(); var rdc = new DomoticzDeviceType() { Title = "Raspberry", ShortName = "Pi3" }; var etage = new DomoticzDeviceType() { Title = "Freebox", ShortName = "Fbx" }; foreach (var item in items.result) { if (item.HardwareName.Equals("BibRaspberry")) { rdc.Add(item); } else if (item.HardwareName.Equals("Freebox Server")) { etage.Add(item); } } ; grouped.Add(rdc); grouped.Add(etage); lstView.ItemsSource = grouped; lstView.IsGroupingEnabled = true; lstView.GroupDisplayBinding = new Binding("Title"); lstView.ItemTemplate.SetBinding(TextCell.TextProperty, "Name"); lstView.IsPullToRefreshEnabled = true; lstView.ItemSelected += OnItemSelected; lstView.IsPullToRefreshEnabled = true; lstView.Refreshing += OnItemRefresh; Content = lstView; } }
protected override async void OnAppearing() { items = await domoticzManager.GetDeviceList("light"); var lstView = new ListView(); lstView.RowHeight = 60; this.Title = "SecurityElement"; lstView.ItemTemplate = new DataTemplate(typeof(CustomSecurityElementsCell)); lstView.GroupHeaderTemplate = new DataTemplate(typeof(CustomSecurityElementsGroupedCell)); if (items.result.Count > 0) { var grouped = new ObservableCollection <DomoticzDeviceType>(); var doorSensor = new DomoticzDeviceType() { Title = "Door Sensor", ShortName = "DS" }; var motionSensor = new DomoticzDeviceType() { Title = "Motion Sensor", ShortName = "MS" }; var smokeSensor = new DomoticzDeviceType() { Title = "Smoke Sensor", ShortName = "SS" }; var floodSensor = new DomoticzDeviceType() { Title = "Flood Sensor", ShortName = "FS" }; foreach (var item in items.result) { if (item.SwitchType != null && item.Image != null) { if (item.SwitchType.Equals("Door Lock")) { doorSensor.Add(item); } else if (item.Image.Equals("Water")) { floodSensor.Add(item); } else if (item.SwitchType.Equals("Motion Sensor")) { motionSensor.Add(item); } else if (item.SwitchType.Equals("Smoke Detector")) { smokeSensor.Add(item); } } } ; grouped.Add(doorSensor); grouped.Add(motionSensor); grouped.Add(smokeSensor); grouped.Add(floodSensor); lstView.ItemsSource = grouped; lstView.IsGroupingEnabled = true; lstView.GroupDisplayBinding = new Binding("Title"); lstView.ItemTemplate.SetBinding(TextCell.TextProperty, "Name"); lstView.IsPullToRefreshEnabled = true; lstView.ItemSelected += OnItemSelected; lstView.IsPullToRefreshEnabled = true; lstView.Refreshing += OnItemRefresh; Content = lstView; } }