如何在输入n个字符后强制AutoCompleteBox控件填充ItemSource?

时间:2010-10-07 09:28:02

标签: .net silverlight silverlight-4.0 autocomplete

是否可以强制SilverLight应用程序中的AutoCompleteBox控件仅在输入n个字符后才开始获取ItemSource数据(具有过滤模式的数据StartsWith?

谢谢,

这是我绑定ItemsSources的方式(基本上有一个comboBox代表Stetes。一旦选择了状态,我设置了AutoCompleteBox控件的itemsSource。但是在我输入3个字符之前,甚至在Db调用完成之前 - 由SQL事件探查器检查 - ):

这是我的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 :(得分:0)

MinimumPrefixLength属性设置为您想要的字符数。