AutoCompleteExtender控制項是用於對TextBox進行提示填充的控制項。就像Google Suggest。下面就來看個小例子。
樣本:在文字框中輸入字元,在文字框下隨機出現一些可供選擇的列表。
1) 建立一個ASP.NET AJAX-Enabled Web Project。命名為AutoCompleteExtender1。
2) 在Default.aspx頁面的源中添加如下代碼:
1 <div>
2 <cc1:AutoCompleteExtender ID="AutoCompleteExtender1" TargetControlID="TextBox1" CompletionSetCount="12"
3 ServicePath="AutoComplete.asmx" ServiceMethod="GetCompletionList" CompletionInterval="1000" EnableCaching="true" MinimumPrefixLength="2" runat="server">
4 </cc1:AutoCompleteExtender>
5
6 </div>
7 <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
3) 在工程中添加名字為AutoComplete.asmx的Web服務,並添加如下代碼:
1 [System.Web.Script.Services.ScriptService()]
2 public class AutoComplete : System.Web.Services.WebService
3 {
4
5 [WebMethod]
6 public string[] GetCompletionList(string prefixText,int count)
7 {
8 if (count == 0)
9 {
10 count = 10;
11 }
12
13 if (prefixText.Equals("xyx"))
14 {
15 return new string[0];
16 }
17
18 List<string> items=new List<string>(count);
19 Random random1=new Random();
20 for(int i=0;i<count;i++)
21 {
22 char c1 = (char)random1.Next(65, 97);
23 char c2 = (char)random1.Next(97, 122);
24 char c3 = (char)random1.Next(97, 122);
25 items.Add(prefixText + c1 + c2 + c3);
26 }
27 return items.ToArray();
28 }
29 }
4) 儲存,按下CTRL+F5在瀏覽器裡預覽。效果如下: