public void SetDataContext(IOneWayPriceViewModel viewModel) { _viewModel = viewModel; _canExecuteSubscription.Disposable = Observable.FromEventPattern(h => viewModel.ExecuteCommand.CanExecuteChanged += h, h => viewModel.ExecuteCommand.CanExecuteChanged -= h) .Subscribe(_ => { var canExecute = viewModel.ExecuteCommand.CanExecute(null); Enabled = _isEnabledOverride && canExecute; }); _executingSubscription.Disposable = _viewModel.ObserveProperty(vm => vm.IsExecuting) .Subscribe(isExecuting => { Selected = isExecuting; _progressView.Visibility = isExecuting ? ViewStates.Visible : ViewStates.Invisible; _contentView.Visibility = isExecuting ? ViewStates.Invisible : ViewStates.Visible; }); _propertyChangedSubscription.Disposable = viewModel.ObserveProperty().Subscribe(_ => Update(viewModel)); Update(viewModel); }
public void SetDataContext(IOneWayPriceViewModel viewModel) { _viewModel = viewModel; _canExecuteSubscription.Disposable = Observable.FromEventPattern(h => viewModel.ExecuteCommand.CanExecuteChanged += h, h => viewModel.ExecuteCommand.CanExecuteChanged -= h) .Subscribe(_ => { var canExecute = viewModel.ExecuteCommand.CanExecute(null); Enabled =_isEnabledOverride && canExecute; }); _executingSubscription.Disposable = _viewModel.ObserveProperty(vm => vm.IsExecuting) .Subscribe(isExecuting => { Selected = isExecuting; _progressView.Visibility = isExecuting ? ViewStates.Visible : ViewStates.Invisible; _contentView.Visibility = isExecuting ? ViewStates.Invisible : ViewStates.Visible; }); _propertyChangedSubscription.Disposable = viewModel.ObserveProperty().Subscribe(_ => Update(viewModel)); Update(viewModel); }
private void Update(IOneWayPriceViewModel viewModel) { _bigFiguresTextView.Text = viewModel.BigFigures; _pipsTextView.Text = viewModel.Pips; _tenthOfPipTextView.Text = viewModel.TenthOfPip; }