DatePicker.SelectedDateChanged Событие
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Происходит при изменении значения даты.
// Register
event_token SelectedDateChanged(TypedEventHandler<DatePicker, DatePickerSelectedValueChangedEventArgs const&> const& handler) const;
// Revoke with event_token
void SelectedDateChanged(event_token const* cookie) const;
// Revoke with event_revoker
DatePicker::SelectedDateChanged_revoker SelectedDateChanged(auto_revoke_t, TypedEventHandler<DatePicker, DatePickerSelectedValueChangedEventArgs const&> const& handler) const;
public event TypedEventHandler<DatePicker,DatePickerSelectedValueChangedEventArgs> SelectedDateChanged;
function onSelectedDateChanged(eventArgs) { /* Your code */ }
datePicker.addEventListener("selecteddatechanged", onSelectedDateChanged);
datePicker.removeEventListener("selecteddatechanged", onSelectedDateChanged);
- or -
datePicker.onselecteddatechanged = onSelectedDateChanged;
Public Custom Event SelectedDateChanged As TypedEventHandler(Of DatePicker, DatePickerSelectedValueChangedEventArgs)
<DatePicker SelectedDateChanged="eventhandler" />
Тип события
Примеры
Ниже приведен пример обработчика SelectedDateChanged
событий. Чтобы просмотреть этот пример с дополнительным контекстом, см. статью Элементы управления календарем, датой и временем— совместное использование средства выбора даты и времени.
<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;
}
Комментарии
При обработке этого события используйте свойства OldDate и NewDate данных события DatePickerSelectedValueChangedEventArgs для своей логики. Эти свойства используют разные типы данных в зависимости от языка программирования (C# и Visual Basic используют System.DateTimeOffset; Расширения компонентов Visual C++ (C++/CX) используют Windows::Foundation::D ateTime).