Steps
Create an ASP.NET 4.0 Web Application
Add reference to AjaxControlToolit
Open Default.aspx
Add Script Manager
Add Ajax AutoCompleteExtender
Using the Code
Using the code (default.aspx)
Hide Copy Code
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:ScriptManager ID="ScriptManager1" runat="server"
EnablePageMethods = "true">
</asp:ScriptManager>
Enter a Product Name
<asp:TextBox ID="txtProductList" runat="server"></asp:TextBox>
<cc1:AutoCompleteExtender ServiceMethod="GetProductList"
MinimumPrefixLength="1"
CompletionInterval="0" EnableCaching="false" CompletionSetCount="10"
TargetControlID="txtProductList"
ID="autoCompleteExtender1" runat="server" FirstRowSelected = "false">
</cc1:AutoCompleteExtender>
</div>
</form>
</body>
</html>
Default.aspx.cs
[System.Web.Script.Services.ScriptMethod()]
[System.Web.Services.WebMethod]
public static string[] GetProductList(string prefixText, int count)
{
// Get the Products From Data Source. Change this method to use Database
List<string> productList = GetProducts();
// Find All Matching Products
var list = from p in productList
where p.Contains(prefixText)
select p;
//Convert to Array as We need to return Array
string[] prefixTextArray = list.ToArray<string>();
//Return Selected Products
return prefixTextArray;
}
Points of Interest
If you want that your method responds to the Scripting Language, make sure to add [System.Web.Script.Services.ScriptMethod()] to method attribute. Else, this won't work
And yes, this does not require addition of Web Service!
No comments:
Post a Comment