Calendar.OnSelectionChanged Metod
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Genererar kontrollens SelectionChangedCalendar händelse och gör att du kan ange en anpassad hanterare för SelectionChanged händelsen.
protected:
virtual void OnSelectionChanged();
protected virtual void OnSelectionChanged();
abstract member OnSelectionChanged : unit -> unit
override this.OnSelectionChanged : unit -> unit
Protected Overridable Sub OnSelectionChanged ()
Exempel
I följande kodexempel visas hur du anger och kodar en hanterare för händelsen för SelectionChanged att visa antalet objekt som valts Calendar i kontrollen.
<%@ Page Language="C#" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Calendar SelectionChanged Example</title>
<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 id="form1" 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 style="background-color:silver">
<th>
Selected Dates:
</th>
</tr>
<tr>
<td>
<asp:Label id="Message"
Text="No dates selected."
runat="server"/>
</td>
</tr>
</table>
</form>
</body>
</html>
<%@ Page Language="VB" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Calendar SelectionChanged Example</title>
<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 id="form1" 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 style="background-color:silver">
<th>
Selected Dates:
</th>
</tr>
<tr>
<td>
<asp:Label id="Message"
Text="No dates selected."
runat="server"/>
</td>
</tr>
</table>
</form>
</body>
</html>
<%@ Page Language="C#" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Calendar SelectionChanged Example</title>
<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 id="form1" 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 style="background-color:silver">
<th>
Selected dates
</th>
</tr>
<tr>
<td>
<asp:Label id="Message"
Text="No dates selected."
runat="server"/>
</td>
</tr>
</table>
</form>
</body>
</html>
<%@ Page Language="VB" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Calendar SelectionChanged Example</title>
<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 id="form1" 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 style="background-color:silver">
<th>
Selected Dates:
</th>
</tr>
<tr>
<td>
<asp:Label id="Message"
Text="No dates selected."
runat="server"/>
</td>
</tr>
</table>
</form>
</body>
</html>
Kommentarer
Händelsen SelectionChanged utlöses när användaren väljer en dag, en vecka eller en hel månad genom att klicka på datumväljarkontrollerna.
När du skapar en händelse anropas händelsehanteraren via ett ombud. Mer information finns i Hantera och höja händelser.
Metoden OnSelectionChanged gör det också möjligt för härledda klasser att hantera händelsen utan att koppla ett ombud. Det här är den bästa tekniken för att hantera händelsen i en härledd klass.
Anteckningar till arvingar
När du OnSelectionChanged() åsidosätter i en härledd klass måste du anropa basklassens OnSelectionChanged() metod så att registrerade ombud tar emot händelsen.