示例#1
0
        public async void OptionCheckedAsync(BoolOption newOption)
        {
            using (_isBusy.BusyMode)
            {
                // Because i dont want user to shift between two options till 'Yes' will be pressed...
                if (newOption != _lastFallbackedOption)
                {
                    var doChange = await UserInteracting.RequestAcknowledgementAsync("Смена длительности импульса", "Данные предыдущих замеров будут стерты.-NL-NLПродолжить?");

                    if (doChange)
                    {
                        _calibrator.DiscardShockCalibration();
                        _lastFallbackedOption = null;
                    }
                    else
                    {
                        newOption.IsChecked              = false;
                        _lastFallbackedOption            = _previousCheckedOption;
                        _previousCheckedOption.IsChecked = true; // this line triggers method to run again, so it should be the last
                    }

                    _previousCheckedOption = ImpulseDurations.Single(o => o.IsChecked);
                }
            }
        }
示例#2
0
 public PulseDurationVM(BusyObject isBusy, ShockSensorCalibrator calibrator)
 {
     _isBusy                = isBusy;
     _calibrator            = calibrator;
     _previousCheckedOption = ImpulseDurations.Single(o => o.IsChecked);
 }