2015-02-25 2 views
0

У меня есть класс проверки, который должен взять серию дат в коллекции List<DateTime>, которая предоставляется как свойство на валидаторе.Как инициализировать коллекцию объектов DateTime в XAML?

Для некоторых экземпляров этого валидатора я хотел бы заполнить даты в коде XAML, а не из кода за окном. В частности, мне может понадобиться заполнить дату DateTime.Now в коллекции.

Как я могу это сделать? Вот какой код для одного из моих DatePicker элементов управления, которые должны использовать эту реализацию.

... Within a DatePicker control declaration ... 
<Binding.ValidationRules> 
    <vr:DatePickerValidator Comparator="GreaterThanOrEqual" > 
     <vr:DatePickerValidator.ComparisonDates> 
      <!-- How can I insert a date for "DateTime.Now", rather than a hard-coded date? --> 
     </vr:DatePickerValidator.ComparisonDates> 
    </vr:DatePickerValidator> 
</Binding.ValidationRules> 

ответ

0

Вы не можете использовать статические классы внутри дочерних элементов элемента свойств. Тем не менее, вы можете сделать что-то вроде этого

<Binding.ValidationRules> 
    <vr:DatePickerValidator Comparator="GreaterThanOrEqual" > 
     <vr:DatePickerValidator.ComparisonDates> 
      <x:Static MemberType="system:DateTime" Member="system:DateTime.Now" /> 
      <x:Static MemberType="system:DateTime" Member="system:DateTime.Now" /> 
      <x:Static MemberType="system:DateTime" Member="system:DateTime.Now" /> 
     </vr:DatePickerValidator.ComparisonDates> 
    </vr:DatePickerValidator> 
</Binding.ValidationRules> 
+0

Будет ли это работать, поскольку ComparisonDates - это коллекция? Кроме того, как мне добавить несколько дат? Рассмотрим сценарий, в котором должны быть добавлены как 'DateTime.Now', так и' DateTime.Now.AddDays (1) '. Как это можно сделать? – RLH

+0

У вас есть 'DatePickerValidator'? Если это так. Да, ты можешь. Однако вы не можете использовать AddDays (1). Вы должны расширить его, чтобы принять определенные вещи, чтобы вызывать из-за кода. –

+0

Да, у меня есть класс. Я просто хотел узнать, как инициализировать несколько дат, поскольку это общий валидатор, который я разработал для выбора даты. – RLH

Смежные вопросы