How to use ListBox SelectedIndexChanged event in asp.net c#

ListBox SelectedIndexChanged Event
ListBox is an asp.net list web server control that contains a list of selectable items. more than one item is visible in listbox control. listbox SelectionMode property determines whether multiple items in the listbox is selectable at a time.

listbox SelectedIndexChanged event occurs when the SelectedIndex property or the SelectedIndices collection has changed. listbox SelectedIndex property get or set the zero based index of the currently selected item. and SelectedIndices property gets a collection that contains the zero based indexes of all currently selected items in listbox. for a multiple selection listbox SelectedIndices property returns a collection containing the indexes of all selected items. listbox SelectedIndexChanged event works when we set the listbox AutoPostBack property value to True and write an event handler for OnSelectedIndexChanged property.

when user changes the selection of item in a single selection mode listbox control then SelectedIndexChanged event occurs and page post to web server automatically. this event also occurs when user add or remove item from multiple selected items in a multi-selection mode listbox control.

the following c# example source code demonstrate us how can we use listbox SelectedIndexChanged event in asp.net.
ListBoxOnSelectedIndexChanged.aspx

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

<!DOCTYPE html>

<script runat="server">
    protected void ListBox1_SelectedIndexChanged(object sender, System.EventArgs e)
    {
        Label1.Text = "Your Favorite Color: " + ListBox1.SelectedItem.Text;
    }
</script>

<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
    <title>How to use SelectedIndexChanged event in ListBox</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <h2 style="color:Maroon">ListBox: OnSelectedIndexChanged</h2>
        <asp:Label 
             ID="Label1"
             runat="server"
             Font-Bold="true"
             ForeColor="SeaGreen"
             Font-Size="Large"
             >
        </asp:Label>
        <br /><br />
        <asp:Label 
             ID="Label2"
             runat="server"
             Font-Bold="true"
             ForeColor="DarkCyan"
             Text="Color List"
             >
        </asp:Label>
        <br />
        <asp:ListBox 
             ID="ListBox1"
             runat="server"
             AutoPostBack="true"
             OnSelectedIndexChanged="ListBox1_SelectedIndexChanged"
             BackColor="DarkCyan"
             ForeColor="AliceBlue"
             >
             <asp:ListItem>LawnGreen</asp:ListItem>
             <asp:ListItem>LightSalmon</asp:ListItem>
             <asp:ListItem>MediumBlue</asp:ListItem>
             <asp:ListItem>MediumOrchid</asp:ListItem>
             <asp:ListItem>Lavender</asp:ListItem>
        </asp:ListBox>
    </div>
    </form>
</body>
</html>
More asp.net examples