private void SetupTopLevelSubscription() { //listen for changes in the number of legs DisposableHelper.CreateNewCompositeDisposable(ref fakePairDisposables); fakePairDisposables.Add(spotTileViewModel.ObservePropertyChanged(x => x.FakeSpotPair) .Where(x => !string.IsNullOrEmpty(x.NewValue)) .Subscribe(x => { this.SetupFakePairSubscription(); })); if (!string.IsNullOrEmpty(spotTileViewModel.FakeSpotPair)) { SetupFakePairSubscription(); } }