Calendar.SelectionChanged Event
Occurs when the user selects a day, a week, or an entire month by clicking the date selector controls.
[Visual Basic] Public Event SelectionChanged As EventHandler [C#] public event EventHandler SelectionChanged; [C++] public: __event EventHandler* SelectionChanged;
[JScript] In JScript, you can handle the events defined by a class, but you cannot define your own.
Event Data
The event handler receives an argument of type EventArgs.
Remarks
This event is raised when the user selects a day, a week, or an entire month by clicking the date selector controls.
For more information about handling events, see Consuming Events.
Example
[Visual Basic, C#] The following example demonstrates how to specify and code a handler for the SelectionChanged event to display the number of items selected in the Calendar control.
[Visual Basic] <%@ Page Language="VB" AutoEventWireup="True" %> <html> <head> <script runat="server"> Sub Selection_Change(sender As Object, e As EventArgs) ' Clear the current text. Message.Text = "" ' Iterate through the SelectedDates collection and display the ' dates selected in the Calendar control. Dim day As DateTime For Each day In Calendar1.SelectedDates Message.Text &= day.Date.ToShortDateString() & "<br>" Next End Sub </script> </head> <body> <form runat="server"> <h3>Calendar SelectionChanged Example</h3> Select dates on the Calendar control.<br><br> <asp:Calendar ID="Calendar1" runat="server" SelectionMode="DayWeekMonth" ShowGridLines="True" OnSelectionChanged="Selection_Change"> <SelectedDayStyle BackColor="Yellow" ForeColor="Red"> </SelectedDayStyle> </asp:Calendar> <hr> <table border="1"> <tr bgcolor="Silver"> <th> Selected Dates: </th> </tr> <tr> <td> <asp:Label id="Message" Text="No dates selected." runat="server"/> </td> </tr> </table> </form> </body> </html> [C#] <%@ Page Language="C#" AutoEventWireup="True" %> <html> <head> <script runat="server"> void Selection_Change(Object sender, EventArgs e) { // Clear the current text. Message.Text = ""; // Iterate through the SelectedDates collection and display the // dates selected in the Calendar control. foreach(DateTime day in Calendar1.SelectedDates) { Message.Text += day.Date.ToShortDateString() + "<br>"; } } </script> </head> <body> <form runat="server"> <h3>Calendar SelectionChanged Example</h3> Select dates on the Calendar control.<br><br> <asp:Calendar ID="Calendar1" runat="server" SelectionMode="DayWeekMonth" ShowGridLines="True" OnSelectionChanged="Selection_Change"> <SelectedDayStyle BackColor="Yellow" ForeColor="Red"> </SelectedDayStyle> </asp:Calendar> <hr> <table border="1"> <tr bgcolor="Silver"> <th> Selected Dates: </th> </tr> <tr> <td> <asp:Label id="Message" Text="No dates selected." runat="server"/> </td> </tr> </table> </form> </body> </html> [Visual Basic] <%@ Page Language="VB" AutoEventWireup="True" %> <html> <head> <script runat="server"> Sub Selection_Change(sender As Object, e As EventArgs) ' Clear the current text. Message.Text = "" ' Iterate through the SelectedDates collection and display the ' dates selected in the Calendar control. Dim day As DateTime For Each day In Calendar1.SelectedDates Message.Text &= day.Date.ToShortDateString() & "<br>" Next End Sub Sub Page_Load(sender As Object, e As EventArgs) ' Manually register the event-handling method for the ' SelectionChanged event of the Calendar control. AddHandler Calendar1.SelectionChanged, AddressOf Selection_Change End Sub </script> </head> <body> <form runat="server"> <h3>Calendar SelectionChanged Example</h3> Select a day, week, or month on the Calendar control.<br><br> <asp:Calendar ID="Calendar1" runat="server" SelectionMode="DayWeekMonth" ShowGridLines="True"> <SelectedDayStyle BackColor="Yellow" ForeColor="Red"> </SelectedDayStyle> </asp:Calendar> <hr> <table border="1"> <tr bgcolor="Silver"> <th> Selected Dates: </th> </tr> <tr> <td> <asp:Label id="Message" Text="No dates selected." runat="server"/> </td> </tr> </table> </form> </body> </html> [C#] <%@ Page Language="C#" AutoEventWireup="True" %> <html> <head> <script runat="server"> void Selection_Change(Object sender, EventArgs e) { // Clear the current text. Message.Text = ""; // Iterate through the SelectedDates collection and display the // dates selected in the Calendar control. foreach(DateTime day in Calendar1.SelectedDates) { Message.Text += day.Date.ToShortDateString() + "<br>"; } } void Page_Load(Object sender, EventArgs e) { // Manually register the event-handling method for the // SelectionChanged event of the Calendar control. Calendar1.SelectionChanged += new EventHandler(this.Selection_Change); } </script> </head> <body> <form runat="server"> <h3>Calendar SelectionChanged Example</h3> Select a day, week, or month on the Calendar control.<br><br> <asp:Calendar ID="Calendar1" runat="server" SelectionMode="DayWeekMonth" ShowGridLines="True"> <SelectedDayStyle BackColor="Yellow" ForeColor="Red"> </SelectedDayStyle> </asp:Calendar> <hr> <table border="1"> <tr bgcolor="Silver"> <th> Selected dates </th> </tr> <tr> <td> <asp:Label id="Message" Text="No dates selected." runat="server"/> </td> </tr> </table> </form> </body> </html>
[C++, JScript] No example is available for C++ or JScript. To view a Visual Basic or C# example, click the Language Filter button
in the upper-left corner of the page.
Requirements
Platforms: Windows 2000, Windows XP Professional, Windows Server 2003 family
See Also
Calendar Class | Calendar Members | System.Web.UI.WebControls Namespace | OnSelectionChanged