RadioButtonList SelectedIndexChanged event in asp.net c#

SelectedIndexChanged event in RadioButtonList
RadioButtonList is an ASP.NET list web server control that provide a single selection radio button group. RadioButtonList can be populate statically or dynamically from a data source object. RadioButtonList contains an items collection which hold ListItem objects. Each ListItem object represent an item (radio button) in RadioButtonList control.

RadioButtonList OnSelectedIndexChanged method raises the SelectedIndexChanged event. This method allow us to provide a custom handler for the SelectedIndexChanged event.

RadioButtonList SelectedIndexChanged event occurs when the items selection changes between posts to the web server. This event works only when we set the RadioButtonList control's AutoPostBack property value to True. AutoPostBack property get or set a value indicating whether a postback to the server automatically occurs when the user changes the list selection.

So when user change the RadioButtonList item selection then the SelectedIndexChanged event occurs and the page automatically postback to the server. After the postback we can display the user selection result immediately in web page.

The following ASP.NET C# example code demonstrate us how can we use SelectedIndexChanged event in RadioButtonList web server control.
RadioButtonListOnSelectedIndexChanged.aspx

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

<!DOCTYPE html>

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

<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
    <title>How to use OnSelectedIndexChanged event in RadioButtonList</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <h2 style="color:Maroon">RadioButtonList: OnSelectedIndexChanged</h2>
        <asp:Label 
             ID="Label1"
             runat="server"
             Font-Bold="true"
             ForeColor="Teal"
             Font-Size="Large"
             >
        </asp:Label>
        <br /><br />
        <asp:Label 
             ID="Label2"
             runat="server"
             Font-Bold="true"
             ForeColor="DodgerBlue"
             Text="Color List"
             >
        </asp:Label>
        <asp:RadioButtonList 
             ID="RadioButtonList1"
             runat="server"
             AutoPostBack="true"
             OnSelectedIndexChanged="RadioButtonList1_SelectedIndexChanged"
             BackColor="DodgerBlue"
             ForeColor="AliceBlue"
             >
             <asp:ListItem>Cyan</asp:ListItem>
             <asp:ListItem>DarkBlue</asp:ListItem>
             <asp:ListItem>DarkGreen</asp:ListItem>
             <asp:ListItem>DarkSalmon</asp:ListItem>
             <asp:ListItem>Crimson</asp:ListItem>
        </asp:RadioButtonList>
    </div>
    </form>
</body>
</html>
Related asp.net examples