private void OnZipCodeAutoCompleteCompleting(object sender, AutoCompleteCompletingEventArgs e) { List<string> strings = new List<string>(); for (int i = 0; i < 10; i++) { string s = e.Prefix + i; strings.Add(s); } e.SetCompletionItems(strings); }
private void OnTimerTick(object sender, EventArgs e) { _timer.Stop(); if (_request != null) { _request.CancelAsync(); _request = null; } string prefix = AssociatedObject.Text; AutoCompleteCompletingEventArgs cea = null; if (_completingHandler != null) { cea = new AutoCompleteCompletingEventArgs(prefix); _completingHandler(this, cea); if (cea.IsDropDownSuppressed) { return; } if (cea.CompletionItems != null) { _prefix = prefix; ShowDropDown(cea.CompletionItems); return; } } if (_completionCache != null) { IList cachedItems = _completionCache.GetItems(prefix); if (cachedItems != null) { _prefix = prefix; ShowDropDown(cachedItems); return; } } if (_serviceUri == null) { return; } _request = new WebClient(); if (_resolvedServiceUri == null) { _resolvedServiceUri = _serviceUri; if (_serviceUri.IsAbsoluteUri == false) { _resolvedServiceUri = new Uri(Application.Current.Host.Source, _serviceUri); } } StringBuilder queryBuilder = new StringBuilder("prefix=" + HttpUtility.UrlEncode(prefix)); if ((cea != null) && (cea.ServiceParameters != null)) { foreach (KeyValuePair <string, string> entry in cea.ServiceParameters) { queryBuilder.Append("&"); queryBuilder.Append(HttpUtility.UrlEncode(entry.Key)); queryBuilder.Append("="); queryBuilder.Append(HttpUtility.UrlEncode(entry.Value)); } } UriBuilder uriBuilder = new UriBuilder(_resolvedServiceUri); uriBuilder.Query = queryBuilder.ToString(); Uri requestUri = uriBuilder.Uri; _prefix = prefix; _request.OpenReadCompleted += OnRequestCompleted; _request.OpenReadAsync(requestUri); }