private async void SubmitQuery()
        {
            if (this.SelectedOnlineQuery == null)
            {
                return;
            }
            if (_executeQuery)
            {
                return;
            }
            _executeQuery = true;
            _addFailed    = false;
            _results.Clear();
            _timer.Start();
            OnPropertyChanged("IsExecutingQuery");
            OnPropertyChanged("AddStatus");

            try {
                var submitQuery = new SubmitOnlineQuery();
                this.SelectedOnlineQuery.Keywords = this.Keywords;
                this.SelectedOnlineQuery.Content  = SelectedResultOption;
                var response = await submitQuery.ExecWithEsriClientAsync(this.SelectedOnlineQuery, _results);
            }
            finally {
                _timer.Stop();
                _executeQuery = false;
                OnPropertyChanged("IsExecutingQuery");
                //OnPropertyChanged("Results");
            }
        }
        private async void SubmitQuery() {
            if (this.SelectedOnlineQuery == null)
                return;
            if (_executeQuery)
                return;
            _executeQuery = true;
            _addFailed = false;
            _results.Clear();
            _timer.Start();
            OnPropertyChanged("IsExecutingQuery");
            OnPropertyChanged("AddStatus");

            try {
                var submitQuery = new SubmitOnlineQuery();
                this.SelectedOnlineQuery.Keywords = this.Keywords;
                this.SelectedOnlineQuery.Content = SelectedResultOption;
                var response = await submitQuery.ExecWithEsriClientAsync(this.SelectedOnlineQuery, _results);
            }
            finally {
                _timer.Stop();
                _executeQuery = false;
                OnPropertyChanged("IsExecutingQuery");
                //OnPropertyChanged("Results");
            } 
        }