Skip to content

Latest commit

 

History

History
74 lines (55 loc) · 2.66 KB

datepicker_selecteddatechanged.md

File metadata and controls

74 lines (55 loc) · 2.66 KB
-api-id -api-type ms.custom
E:Windows.UI.Xaml.Controls.DatePicker.SelectedDateChanged
winrt event
RS5

Windows.UI.Xaml.Controls.DatePicker.SelectedDateChanged

-description

Occurs when the date value is changed.

-xaml-syntax

<DatePicker SelectedDateChanged="eventhandler" />

-remarks

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).

-see-also

SelectedDate, DatePickerSelectedValueChangedEventArgs, Date picker

-examples

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;
}