This documentation is archived and is not being maintained.

DataList.SelectedItemTemplate Property

Gets or sets the template for the selected item in the DataList control.

Namespace: System.Web.UI.WebControls
Assembly: System.Web (in system.web.dll)

public virtual ITemplate SelectedItemTemplate { get; set; }
/** @property */
public ITemplate get_SelectedItemTemplate ()

/** @property */
public void set_SelectedItemTemplate (ITemplate value)

public function get SelectedItemTemplate () : ITemplate

public function set SelectedItemTemplate (value : ITemplate)

Property Value

A System.Web.UI.ITemplate that contains the template for the selected item in the DataList control. The default value is a null reference (Nothing in Visual Basic).

Use the SelectedItemTemplate property to control the contents of the selected item. The appearance of the selected item is controlled by the SelectedItemStyle property.

To specify a template for the selected item, place the <SelectedItemTemplate> tags between the opening and closing tags of the DataList control. You can then list the contents of the template between the opening and closing <SelectedItemTemplate> tags.

Caution noteCaution

This control can be used to display user input, which might include malicious client script. Check any information that is sent from a client for executable script, SQL statements, or other code before displaying it in your application. You can use validation controls to verify user input before displaying the input text in a control. ASP.NET provides an input request validation feature to block script and HTML in user input. For more information, see Securing Standard ControlsHow to: Protect Against Script Exploits in a Web Application by Applying HTML Encoding to Strings, and Validating User Input in ASP.NET Web Pages.

The following code example demonstrates how to use the SelectedItemTemplate property to control the contents of the selected item in the DataList control.


The following code sample uses the single-file code model and may not work correctly if copied directly into a code-behind file. This code sample must be copied into an empty text file that has an .aspx extension. For more information on the Web Forms code model, see ASP.NET Web Page Code Model.

<%@ Page Language="C#" AutoEventWireup="True" %>
<%@ Import Namespace="System.Data" %>


   <script runat="server">

      ICollection CreateDataSource() 
         // Create sample data for the DataList control.
         DataTable dt = new DataTable();
         DataRow dr;
         // Define the columns of the table.
         dt.Columns.Add(new DataColumn("Item", typeof(Int32)));
         dt.Columns.Add(new DataColumn("Qty", typeof(Int32)));
         dt.Columns.Add(new DataColumn("Price", typeof(double)));
         // Populate the table with sample values.
         for (int i = 0; i < 9; i++) 
            dr = dt.NewRow();
            dr[0] = i;
            dr[1] = i * 2;
            dr[2] = 1.23 * (i + 1);
         DataView dv = new DataView(dt);
         return dv;

      void Page_Load(Object sender, EventArgs e) 

         // Load sample data only once, when the page is first loaded.
         if (!IsPostBack) 
            ItemsList.DataSource = CreateDataSource();


      void Item_Command(Object sender, DataListCommandEventArgs e) 
         // Set the SelectedIndex property to select an item in the DataList.
         ItemsList.SelectedIndex = e.Item.ItemIndex;

         // Rebind the data source to the DataList to refresh the control.
         ItemsList.DataSource = CreateDataSource();




   <form runat="server">

      <h3>DataList Select Example</h3>

      Click <b>Select</b> to select an item.

      <asp:DataList id="ItemsList"

         <HeaderStyle BackColor="#aaaadd">

         <AlternatingItemStyle BackColor="Gainsboro">

         <SelectedItemStyle BackColor="Yellow">




            <asp:LinkButton id="SelectButton" 

            Item <%# DataBinder.Eval(Container.DataItem, "Item") %>


            <asp:Label id="ItemLabel" 
                 Text='<%# DataBinder.Eval(Container.DataItem, "Item") %>' 


            <asp:Label id="QtyLabel" 
                 Text='<%# DataBinder.Eval(Container.DataItem, "Qty") %>' 


            <asp:Label id="PriceLabel" 
                 Text='<%# DataBinder.Eval(Container.DataItem, "Price", "{0:c}") %>' 





Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see System Requirements.

.NET Framework

Supported in: 2.0, 1.1, 1.0