Beispiel #1
0
        public ObservableCommand(IObservable <bool> canExecute)
        {
            canExecute
            .DistinctUntilChanged()
            .Subscribe(x =>
            {
                _canExecute = x;

                CanExecuteChanged.SafeInvoke(this);
            });

            _canExecute = false;
        }
Beispiel #2
0
 /// <summary>
 /// Raises the <see cref="CanExecuteChanged"/> event.
 /// </summary>
 public virtual void RaiseCanExecuteChanged()
 {
     AutoDispatchIfRequiredAsync(async() =>
     {
         try
         {
             CanExecuteChanged.SafeInvoke(this);
         }
         catch (Exception ex)
         {
             Log.Warning(ex, "Failed to raise CanExecuteChanged");
         }
     });
 }
Beispiel #3
0
        /// <summary>
        /// Raises the <see cref="CanExecuteChanged"/> event.
        /// </summary>
        public void RaiseCanExecuteChanged()
        {
            var action = new Action(() =>
            {
#if NET
                foreach (var handler in _subscribedEventHandlers)
                {
                    handler.SafeInvoke(this);
                }

                CommandManager.InvalidateRequerySuggested();
#else
                CanExecuteChanged.SafeInvoke(this);
#endif
            });

            AutoDispatchIfRequired(action);
        }
Beispiel #4
0
 public void RaiseCanExecuteChanged()
 {
     CanExecuteChanged.SafeInvoke(this);
 }
Beispiel #5
0
 /// <summary>
 /// Raises the <see cref="CanExecuteChanged"/> event.
 /// </summary>
 public virtual void RaiseCanExecuteChanged()
 {
     AutoDispatchIfRequiredAsync(async() => CanExecuteChanged.SafeInvoke(this));
 }