This documentation is archived and is not being maintained.

ListControl.SelectedValue Property

Gets the value of the selected item in the list control, or selects the item in the list control that contains the specified value.

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

[BindableAttribute(true, BindingDirection.TwoWay)]
public virtual string SelectedValue { get; set; }
<asp:ListControl SelectedValue="String" />

Property Value

Type: System.String
The value of the selected item in the list control. The default is an empty string ("").


The selected value is not in the list of available values and view state or other state has been loaded (a postback has been performed). For more information, see the Remarks section.

This property returns the Value property of the selected ListItem. The SelectedValue property is commonly used to determine the value of the selected item in the list control. If multiple items are selected, the value of the selected item with the lowest index is returned. If no item is selected, an empty string ("") is returned.

The SelectedValue property can also be used to select an item in the list control by setting it with the value of the item.

This property cannot be set by themes or style sheet themes. For more information, see ThemeableAttribute and ASP.NET Themes and Skins.

When the selected value is not in the list of available values and a postback is performed, an ArgumentOutOfRangeException exception is thrown. The following example shows how to catch an invalid value before postback occurs:

this.DropDownList1.Items.Add(new ListItem{ Text="Hello", Value="1" });
if(DropDownList1.Items.FindByValue("2") != null) {

The following example demonstrates how to use the SelectedValue property to select an item in a ListBox control. Notice that this property can also be used to retrieve the value of the selected item.

Security noteSecurity Note

This example has a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see Script Exploits Overview.

<%@ Page Language="C#" AutoEventWireup="True" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
<html xmlns="" > 

<head runat="server">
    <title> ListControl SelectedValue Example </title>
<script runat="server">

      void Button_Click(Object sender, EventArgs e)

         // Perform this operation in a try-catch block in case the item is not found.
            List.SelectedValue = ItemTextBox.Text;
            MessageLabel.Text = "You selected " + List.SelectedValue + ".";
         catch (Exception ex)
            List.SelectedValue = null;
            MessageLabel.Text = "Item not found in ListBox control.";





   <form id="form1" runat="server">

      <h3> ListControl SelectedValue Example </h3>

      <asp:ListBox ID="List"

         <asp:ListItem>Item 1</asp:ListItem>
         <asp:ListItem>Item 2</asp:ListItem>
         <asp:ListItem>Item 3</asp:ListItem>
         <asp:ListItem>Item 4</asp:ListItem>


      <hr />

      Enter the value of the item to select: <br />
      <asp:TextBox ID="ItemTextBox"
           Text="Item 1"


      <asp:Button ID="SelectButton"
           Text="Select Item"

      <br /><br />

      <asp:Label ID="MessageLabel"



.NET Framework

Supported in: 4, 3.5, 3.0, 2.0, 1.1

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

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