<%@ Page Title="Home Page" Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="TelerikWebFormsTestBed._Default" %>
<%@ Register TagPrefix="telerik" Namespace="Telerik.Web.UI" Assembly="Telerik.Web.UI, Version=2015.1.225.40, Culture=neutral, PublicKeyToken=121fae78165ba3d4" %>
<
asp:Content
ID
=
"BodyContent"
ContentPlaceHolderID
=
"MainContent"
runat
=
"server"
>
<
telerik:RadAjaxPanel
runat
=
"server"
ID
=
"RadAjaxPanel1"
>
<
h2
>Page methods</
h2
>
<
telerik:RadSearchBox
ID
=
"RadSearchBox2"
runat
=
"server"
EmptyMessage
=
"Search Products"
Width
=
"300"
>
<
WebServiceSettings
Path
=
"default"
Method
=
"GetResults"
/>
</
telerik:RadSearchBox
>
<
p
>
<
asp:Label
runat
=
"server"
ID
=
"Label1"
/>
</
p
>
</
telerik:RadAjaxPanel
>
</
asp:Content
>
and
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web.Script.Services;
using System.Web.Services;
using System.Web.UI;
using Telerik.Web.UI;
namespace TelerikWebFormsTestBed
{
public partial class _Default : Page
{
private static readonly List<
String
> MyData = new List<
string
> {"a", "b", "c"};
protected void Page_Load(object sender, EventArgs e)
{
}
protected void RadSearchBox2_Search(object sender, SearchBoxEventArgs e)
{
Label1.Text = "Text: " + e.Text;
}
[WebMethod]
public static SearchBoxData GetResults(SearchBoxContext context)
{
var results = MyData.Where(x => x.StartsWith(context.Text));
var sbids = new List<
SearchBoxItemData
>();
foreach (var result in results)
{
var itemData = new SearchBoxItemData();
itemData.Text = itemData.Value = result;
sbids.Add(itemData);
}
var sbd = new SearchBoxData {Items = sbids.ToArray()};
return sbd;
}
}
}
GetResults is never invoked. The Page_Load is every time I type something, but not the actual method...