DatePicker (Выбор даты)

Элемент управления DatePicker позволяет пользователю выбрать дату, введя ее в текстовое поле или используя раскрывающийся список Calendar элемента управления.

На следующем рисунке показана DatePicker.

Элемент управления DatePicker в разных состояниях.

Многие из свойств элемента управления DatePicker предназначены для управления встроенными Calendarи работают аналогично соответствующим свойствам в Calendar. В частности, свойства DatePicker.IsTodayHighlighted, DatePicker.FirstDayOfWeek, DatePicker.BlackoutDates, DatePicker.DisplayDateStart, DatePicker.DisplayDateEnd, DatePicker.DisplayDateи DatePicker.SelectedDate функционируют так же, как их аналоги Calendar. Дополнительные сведения см. в разделе Calendar.

Пользователи могут вводить дату непосредственно в текстовое поле, которое задает свойство Text. Если DatePicker не может преобразовать введенную строку в допустимую дату, будет вызвано событие DateValidationError. По умолчанию это приводит к исключению, но обработчик событий для DateValidationError может задать для свойства ThrowException значение false и предотвратить исключение.

Стили и шаблоны

Вы можете изменить значение по умолчанию ControlTemplate , чтобы предоставить DatePicker элементу управления уникальный внешний вид. Дополнительные сведения см. в статье "Что такое стили и шаблоны?", а также как создать шаблон для элемента управления.

Свойство контента

Этот элемент управления не определяет свойство содержимого.

Комплектующие

В следующей DatePicker таблице перечислены именованные части элемента управления.

Часть Тип Description
ЧАСТЬ_Кнопка Button Кнопка, открывающая всплывающее окно календаря.
PART_Popup Popup Всплывающее окно, содержащее календарь для выбора даты.
PART_Root Grid Корневая панель, содержащая макет виджета выбора даты.
PART_TextBox DatePickerTextBox Текстовое поле, отображающее выделенный текст даты.

Визуальные состояния

В следующей DatePicker таблице перечислены визуальные состояния элемента управления.

Имя VisualState Имя VisualStateGroup Description
Disabled CommonStates Элемент управления отключен.
Обычная CommonStates Элемент управления находится в обычном состоянии.
НедопустимыйФокус СостоянияВалидации Элемент управления имеет ошибку проверки и имеет фокус клавиатуры.
НедопустимыйБезФокуса СостоянияВалидации Элемент управления имеет ошибку проверки, но не находится в фокусе клавиатуры.
Действительный СостоянияВалидации Элемент управления действителен и не имеет ошибок проверки.

DatePickerTextBox

DatePickerTextBox — это элемент управления текстового поля, используемый в элементе DatePicker управления.

Комплектующие

В следующей DatePickerTextBox таблице перечислены именованные части элемента управления.

Часть Тип Description
PART_ContentElement FrameworkElement Визуальный элемент, который может содержать объект FrameworkElement. Текст элемента TextBox отображается в этом элементе.
ЧАСТЬ_ВодянойЗнак ContentControl Элемент, содержащий начальный текст в элементе DatePicker.

Визуальные состояния

В следующей DatePickerTextBox таблице перечислены визуальные состояния элемента управления.

Имя VisualState Имя VisualStateGroup Description
Disabled CommonStates DatePickerTextBox отключено.
Наведение курсора CommonStates Указатель мыши расположен над DatePickerTextBox.
Обычная CommonStates Состояние по умолчанию.
ReadOnly CommonStates Пользователь не может изменить текст в элементе DatePickerTextBox.
Focused FocusStates Элемент управления имеет фокус.
Нецеленаправленных FocusStates Элемент управления не имеет фокуса.
НедопустимыйФокус СостоянияВалидации Присоединенное свойство Validation.HasError, и элемент управления имеет true фокус.
НедопустимыйБезФокуса СостоянияВалидации Присоединенное Validation.HasError свойство имеет true значение, и элемент управления не имеет фокуса.
Действительный СостоянияВалидации Элемент управления использует класс Validation, а связываемое свойство Validation.HasError - это false.
Без водяного знака ПодложкаStates Пользователь ввел текст в DatePickerTextBox или выбрал дату в поле DatePicker.
С водяным знаком ПодложкаStates Элемент управления отображает свой исходный текст. Оно DatePickerTextBox находится в этом состоянии, когда пользователь не ввёл текст и не выбрал дату.

См. также