wp7控件使用大全(1) ――AutoCompleteBox

1.概述:

AutoCompleteBox是一个给出友好用户提示的控件,当用户在文本框当中输入首字母的时候,该控件会弹出首字母为输入字母的内容让用户选择,从而可以减少用户输入量.支持数据绑定.用户可以自定义弹出内容.2.引入方法要使用该控件我们必须引入 Microsoft.Phone.Controls.Toolkit.dll,关于如何引入该dll,链接如下:

http://sxchao.blog.51cto.com/907640/850354

 

3.该类层次结构
System..::..Object
System.Windows..::..DependencyObject
System.Windows..::..UIElement
System.Windows..::..FrameworkElement
System.Windows.Controls..::..Control
Microsoft.Phone.Controls..::..AutoCompleteBox


4.在xaml当中的如何使用:a.引入命名空间
xmlns:toolkit="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone.Controls.Toolkit"

b.加入控件布局
<toolkit:AutoCompleteBox x:Name="acBox" Height="80"/>

 

5.cs代码当中如何使用:
using Microsoft.Phone.Controls; //引入命名空间

//初始化该控件
AutoCompleteBox acBox = new AutoCompleteBox();
//设置该控件的一些属性,位置,大小方向等..省略..
...
..

  
  
  
  
  1. List<string> cities = new List<string>();  
  2. cities.Add("Barcelona");  
  3. cities.Add("Bogota");  
  4. cities.Add("Berlin");  
  5. cities.Add("London");  
  6. cities.Add("Las Vegas");  
  7. cities.Add("New York");  
  8. cities.Add("New Castle");  
  9. cities.Add("Sofia");  
  10. cities.Add("Paris");  
  11. cities.Add("Prague");  
  12. cities.Add("Madrid");  
  13. cities.Add("Milan");  
  14. this.acBox.ItemsSource = cities

6. 重要属性
FilterMode

设置接口筛选模式.
AutoCompleteFilterMode. StartsWithCaseSensitive
大小写敏感
AutoCompleteFilterMode. Contains
只要整个字符串当中包含用户输入的字符,就弹出提示
AutoCompleteFilterMode .ContainsCaseSensitive
包含该字符+大小写敏感
AutoCompleteFilterMode .StartsWithCaseSensitive
首字母过滤+大小写敏感

 

 



设置自定义过滤模式.
 

  
  
  
  
  1. this.acBox.ItemFilter = SearchCountry;  
  2. //...  
  3. bool SearchCountry(string search, object value)  
  4. {  
  5. if (value != null)  
  6. {  
  7. //寻找尾字母匹配选项  
  8. if (value.ToString().ToLower().EndsWith(search))  
  9. return true;  
  10. }  
  11. // If no match, return false.  
  12. return false;  

 


TextFilter


同样是用于设置自定义过滤模式
 

  
  
  
  
  1. this.acBox.TextFilter += CustomFilter;  
  2. //...  
  3. bool CustomFilter(string search, string value)  
  4. {  
  5. return (value.Length > 6);  

MinimumPopulateDelay
延迟弹出时间 默认为0,以毫秒为单位计时,3000则为用户输入匹配字符3秒后弹出筛选结果 this.acBox.MinimumPopulateDelay = 2000;


MinimumPrefixLength
最小前缀长度,默认值为1.如果设置为2,则用户至少需要输入2个或者2个以上字符后才给出筛选结果。 this.acBox.MinimumPrefixLength = 6;


Text
设置控件默认展示项
this.acBox.Text=”sxchao博客”;

 

InputScope
设置输入法键盘,例子是设置输入法为数字

 

  
  
  
  
  1. <toolkit:AutoCompleteBox Grid.Row="0" x:Name="acBox" Height="80" Text="sxchao2008博客"> 
  2. <toolkit:AutoCompleteBox.InputScope> 
  3. <InputScope> 
  4. <InputScopeName NameValue="Number"></InputScopeName> 
  5. </InputScope> 
  6. </toolkit:AutoCompleteBox.InputScope> 
  7. </toolkit:AutoCompleteBox> 


ItemsSource
设置数据绑定集合
 

  
  
  
  
  1. cities.Add("Sofia"); 
  2. cities.Add("Paris"); 
  3. cities.Add("Prague"); 
  4. cities.Add("Madrid"); 
  5. cities.Add("Milan"); 
  6. this.acBox.ItemsSource = cities


SelectedItem
设置当前选中项的值 this.acBox.SelectedItem = "sxchao2008";
 

 

你可能感兴趣的:(wp7,AutoCompleteBox)