New to Telerik UI for ASP.NET AJAX? Download free 30-day trial

Client Templates

Customers

RadListBox now supports client templates. The templates are declared in the ClientItemTemplate tag and support the following expressions for evaluating code:

  • #= ... # - Data - Evaluates the Javascript code expression or a string property from the data item and outputs the result in the template.
  • # ... # - Code - Evaluates the JavaScript code expression inside. Does not output value.
  • #: ... # - HTML-encode - Same as the data expression, but HTML-encodes the result.

The templates are applied automatically to all items loaded through web service. To apply a client template to an arbitrary item, you have to call the bindTemplate() function on that item:

function addItem(itemText) {
	var item = new Telerik.Web.UI.RadListBoxItem();
	var list = $find('<%=RadListBox1.ClientID%>');
	item.set_text(itemText);
	list.get_items().add(item);
	item.bindTemplate();
}

You can also define a specific template to individual items on the client:

function setTemplate(item) {
	item.set_clientTemplate("Item Text: #= Text #");
	item.bindTemplate();
}
  • DefaultCS.aspx
  • DefaultCS.aspx.cs
  • styles.css
<%@ Page AutoEventWireup="true" CodeFile="DefaultCS.aspx.cs" Inherits="ListBox.Examples.Functionality.ClientTemplates.DefaultCS"ResponseEncoding="UTF-8" Language="c#"  %>

<!DOCTYPE html>
<html xmlns='http://www.w3.org/1999/xhtml'>
<head runat="server">
    <title>Telerik ASP.NET Example</title>
    <link href="styles.css" rel="stylesheet" type="text/css" />
</head>

<body>
    <form id="form1" runat="server">
    <telerik:RadScriptManager runat="server" ID="RadScriptManager1" />
    <telerik:RadSkinManager ID="RadSkinManager1" runat="server" ShowChooser="true" />
    <div class="demo-container size-thin">
        <telerik:RadListBox RenderMode="Lightweight" runat="server" ID="RadListBox1" Width="300" Height="400" Skin="Telerik">
            <HeaderTemplate>Customers</HeaderTemplate>
            <ClientItemTemplate>
                <div class="imageWrap">
                    <img src="#= Attributes.ImageUrl # " alt=" #= Text # " style="height:80px;width:65px;" />
                </div>
                <div class="panelWrap">
                    <ul class="personDetails">
                        <li class="contactName">#= Text #</li>
                        <li class="title">#= Attributes.ContactTitle #</li>
                        <li class="city">#= Attributes.City #</li>
                    </ul>
                </div>
            </ClientItemTemplate>
            <WebServiceSettings Method="GetCustomers" Path="defaultcs.aspx" />
        </telerik:RadListBox>
    </div>
    </form>
</body>
</html>

Support & Learning Resources

Find Assistance