public TextResultsListPage(IMainThread mainThread, SignalRService signalRService, HueBridgeSetupPage hueBridgeSetupPage, TextResultsListViewModel textResultsListViewModel, PhilipsHueBridgeSettingsService philipsHueBridgeSettingsService) : base(textResultsListViewModel) { _mainThread = mainThread; _hueBridgeSetupPage = hueBridgeSetupPage; _philipsHueBridgeSettingsService = philipsHueBridgeSettingsService; BindingContext.ErrorTriggered += HandleErrorTriggered; BindingContext.PhilipsHueBridgeConnectionFailed += HandlePhilipsHueBridgeConnectionFailed; signalRService.InitializationFailed += HandleInitializationFailed; ToolbarItems.Add(new ToolbarItem { Text = "Setup" } .Invoke(setupToolbarItem => setupToolbarItem.Clicked += HandleSetupPageToolbarItemClicked)); Title = PageTitles.TextResultsPage; this.SetBinding(BackgroundColorProperty, nameof(BindingContext.BackgroundColor)); Content = new RefreshView { RefreshColor = Device.RuntimePlatform is Device.iOS ? ColorConstants.BarTextColor : ColorConstants.BarBackgroundColor, Content = new CollectionView { ItemTemplate = new TextMoodDataTemplateSelector(), BackgroundColor = Color.Transparent }.Bind(CollectionView.ItemsSourceProperty, nameof(BindingContext.TextList)) }.Bind(RefreshView.IsRefreshingProperty, nameof(BindingContext.IsRefreshing)) .Bind(RefreshView.CommandProperty, nameof(BindingContext.PullToRefreshCommand)); }
protected override async void OnAppearing() { base.OnAppearing(); Device.BeginInvokeOnMainThread(_textModelList.BeginRefresh); await SignalRService.Subscribe().ConfigureAwait(false); }