Как установить элемент управления Silverlight DatePicker в состояние «Только чтение»? - PullRequest
3 голосов
/ 20 апреля 2009

Как установить для элемента управления System.Windows.Controls.DatePicker, используемого в проекте Silverlight, значение ReadOnly?

Кажется, что нет никаких свойств, которые я мог бы установить в Xaml или коде позади.

Ответы [ 4 ]

1 голос
/ 06 апреля 2012

Я решил эту проблему, установив новый стиль для элементов управления DatePickerTextBox. Этот элемент управления является частью стиля DatePicker. Затем с помощью этих строк вы можете сделать все элементы управления DatePicker доступными для этого стиля только для чтения. Это только делает чтение вручную только редактированием даты, пользователь все еще может выбрать дату с помощью выпадающей кнопки.

<Style TargetType="prim:DatePickerTextBox">
  <Setter Property="IsReadOnly" Value="True"/>
</Style>
1 голос
/ 15 ноября 2011

Я нашел исходный код для средства выбора даты и добавил свойство ReadOnly.

.. и "да" есть веская причина для этого. Я хотел иметь 3 состояния:

  1. Нормальный
  2. Отключено (выделено серым цветом)
  3. ReadOnly (не выделено серым и без кнопки календаря ... также изменил границу текстового поля, чтобы оно выглядело как метка)
Стиль

3 был моим предпочтением, но, в частности, я хотел различать отключенные элементы управления (выделены серым) и только для чтения «визуально».

Не был уверен насчет размещения кода (есть много) ... или если кто-то все еще заинтересован; -)

0 голосов
/ 22 апреля 2009

Как насчет простой обработки события изменения даты, его подавления и возврата обратно к сегодняшней дате (или некоторой другой установленной дате)?

0 голосов
/ 20 апреля 2009

Зачем вам это нужно?

DatePicker - прославленный комбинированный список, который выпадает из календаря, а не из списка. Если он станет доступным только для чтения, то это будет текстовое поле только для чтения?

Если это просто для внешнего вида, то обходной путь - сделать копию шаблона элементов управления и отредактировать его так, чтобы его состояние «Отключено» выглядело так же, как и его состояние «Активное», а затем установить его в отключенное состояние, когда вам нужно поведение только для чтения. 1005 *

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...