private void OnAreaChanged(object sender, AreaChangedEventArgs args) { lock (_locationService) { if (_currentArea == null || args.Area == null) { _currentArea = args.Area; _currentProvider = this.CreateProvider(_currentArea); } else { if (!_currentArea.Id.Equals(args.Area.Id)) { _currentArea = args.Area; _currentProvider = this.CreateProvider(_currentArea); } } } }
protected virtual void OnAreaChanged(AreaChangedEventArgs e) { this.AreaChanged?.Invoke(this, e); }