-api-id | -api-type | ms.custom |
---|---|---|
E:Windows.UI.Xaml.Controls.DatePicker.SelectedDateChanged |
winrt event |
RS5 |
Occurs when the date value is changed.
<DatePicker SelectedDateChanged="eventhandler" />
When you handle this event, use the OldDate and NewDate properties of the DatePickerSelectedValueChangedEventArgs event data for your logic. These properties use different data types depending on your programming language (C# and Visual Basic use System.DateTimeOffset; Visual C++ component extensions (C++/CX) uses Windows::Foundation::DateTime).
SelectedDate, DatePickerSelectedValueChangedEventArgs, Date picker
Here's an example of a SelectedDateChanged
event handler. To see this example with more context, see Calendar, date, and time controls - Use a date picker and time picker together.
<StackPanel>
<DatePicker x:Name="arrivalDatePicker" Header="Arrival date"
SelectedDateChanged="ArrivalDatePicker_SelectedDateChanged"/>
<TextBlock x:Name="arrivalText"/>
</StackPanel>
DateTime arrivalDateTime;
private void ArrivalDatePicker_SelectedDateChanged(DatePicker sender, DatePickerSelectedValueChangedEventArgs args)
{
if (arrivalDatePicker.SelectedDate != null)
{
if (VerifyDateIsFuture((DateTimeOffset)arrivalDatePicker.SelectedDate) == true)
{
arrivalDateTime = new DateTime(args.NewDate.Value.Year, args.NewDate.Value.Month, args.NewDate.Value.Day);
arrivalText.Text = arrivalDateTime.ToString();
}
else
{
arrivalDatePicker.SelectedDate = null;
arrivalText.Text = "Arrival date must be later than today.";
}
}
}
private bool VerifyDateIsFuture(DateTimeOffset date)
{
if (date > DateTimeOffset.Now)
{
return true;
}
return false;
}