Как заставить элемент управления AutoCompleteBox заполнить ItemSource только после ввода n символов? - PullRequest
1 голос
/ 07 октября 2010

Можно ли заставить элемент управления AutoCompleteBox в приложении SilverLight начать получать данные ItemSource только после ввода n символов (данных в режиме фильтрации StartsWith?

Спасибо

Вот способ, которым я связываю свои ItemsSources (В основном, есть comboBox, который обозначает Stetes. И как только состояние выбрано, я устанавливаю itemsSource элемента управления AutoCompleteBox. Но кажется, что даже прежде, чем я наберу 3 символа, вызов Db выполнен -проверено SQL Profiler -):

Это мой XAML:

<input:AutoCompleteBox Name="autoCompCity" Grid.Column="1" Grid.Row="2" 
HorizontalAlignment="Left"  VerticalAlignment="Bottom" Width="180"
MinimumPopulateDelay="10" MinimumPrefixLength="3" 
FilterMode="StartsWith" MaxDropDownHeight="150"  
ValueMemberPath="CityName" Text="Enter city" 
IsTextCompletionEnabled="True"></input:AutoCompleteBox>

И мой код:

private void comboState_SelectionChanged(object sender
, SelectionChangedEventArgs e)
     {
      if (SelectedState== null)
       return;
       BindCityAutoCompleteBox();
     }


private void BindCityAutoCompleteBox()
 {
  autoCompCity.IsEnabled = true;
  autoCompCity.ItemsSource = GetCityList(SelectedState, SelectedCountry);
 }

1 Ответ

0 голосов
/ 07 октября 2010

Установите для свойства MinimumPrefixLength необходимое количество символов.

...