private void Refresh() { if (_listView == null) { return; } if (LayerContent == null) { _listView.Source = null; return; } if (LayerContent is ILoadable) { if ((LayerContent as ILoadable).LoadStatus != LoadStatus.Loaded) { (LayerContent as ILoadable).Loaded += Layer_loaded; (LayerContent as ILoadable).LoadAsync(); return; } } var items = new ObservableCollection <LegendInfo>(); LoadRecursive(items, LayerContent, ShowEntireTreeHierarchy); var source = new LayerLegendTableSource(items); _listView.Source = source; _listView.ReloadData(); source.CollectionChanged += (a, b) => InvokeOnMainThread(() => _listView.ReloadData()); Hidden = false; InvalidateIntrinsicContentSize(); }
private void Refresh() { if (_listView == null) { return; } if (LayerContent == null) { _listView.Source = null; _listView.ReloadData(); InvalidateIntrinsicContentSize(); return; } if (LayerContent is ILoadable) { if ((LayerContent as ILoadable).LoadStatus != LoadStatus.Loaded) { (LayerContent as ILoadable).Loaded += Layer_loaded; (LayerContent as ILoadable).LoadAsync(); return; } } var items = new ObservableCollection <LegendInfo>(); LoadRecursive(items, LayerContent, IncludeSublayers); var source = new LayerLegendTableSource(items); _listView.Source = source; source.CollectionChanged += (a, b) => InvokeOnMainThread(() => { _listView.ReloadData(); InvalidateIntrinsicContentSize(); SetNeedsUpdateConstraints(); UpdateConstraints(); }); _listView.ReloadData(); InvalidateIntrinsicContentSize(); SetNeedsUpdateConstraints(); UpdateConstraints(); Hidden = false; }