AjaxControlToolkit.dll+WebService.asmx实现自动完成
每用一个组件,就得知道它从哪里来。它有什么优点和不足,能为我们解决什么问题。这些问题官网网站几乎都说的很详细了,所以我们想知道结果直接上去看看就好了。
Address: http://www.ajaxtoolkit.net/
Download:http://ajaxcontroltoolkit.codeplex.com/releases/view/11121
在上述地址现在后解压里面有个SampleWebSite文件夹打开找到Bin文件里面就是AjaxControlToolkit.dll,根据需要选择不同的语言版本。
第一步把组件附加到我们项目的Bin文件下。
第二注册到我们页面:<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="cc1" %>
第三再引入脚步管理器<asp:ScriptManager ID="ScriptManager1" runat="server"> </asp:ScriptManager>
第四在文本中调用:
<asp:TextBox ID="txtCustomerName" runat="server" CssClass="text_style" Width="200"></asp:TextBox>
<cc1:AutoCompleteExtender ID="aceCustomer" runat="server" Enabled="True" EnableCaching="true"
CompletionInterval="100" MinimumPrefixLength="1" ServiceMethod="Get_CustomerName"
ServicePath="~/HLWebService.asmx" CompletionSetCount="20" TargetControlID="txtCustomerName">
</cc1:AutoCompleteExtender>
第五调用WebService方法即可:
[WebMethod]
/// <summary>
/// 用于:自动完成功能 --> 客户名称
/// </summary>
public string[] Get_CustomerName(string prefixText, int count)
{
string[] name;
name = (from c in db.Customer
where c.Name.Contains(prefixText)
select c.Name).Take(count).ToArray();
return name;
}