private void OnSearchError(object sender, SearchErrorEventArgs e)
 {
     if (this.Dispatcher.Thread == Thread.CurrentThread)
     {
         this.ClearResults(e.Error);
     }
     else
     {
         this.Dispatcher.BeginInvoke(new Action <object, SearchErrorEventArgs>(this.OnSearchError), sender, e);
     }
 }
 private void Provider_SearchError(object sender, SearchErrorEventArgs e)
 {
     if (!this.isAddtionalSearch)
     {
         this.isAddtionalSearch = true;
         this.CreateRequestAndSearchAsync(this.address);
     }
     else
     {
         MessageBox.Show("Address cannot be found!");
     }
 }
        private void HandleSearchError(object sender, SearchErrorEventArgs e)
        {
            var exception = e.Exception;

            string message;
            if (exception is AggregateException)
            {
                var errorText = (exception as AggregateException).ExtractSingleInnerException().Message;
                errorText = TryExtractMessageFromJSONError(errorText);
                message = errorText;
            }
            else
            {
                message = exception.Message;
            }

            SearchErrorMessage.Value = message;
            IsErrorVisible.Value = true;
        }