Интервалы выпадающего списка WPF TimePicker

#c# #wpf #timepicker #xceed-plus-edition

#c# #wpf #выбор времени #xceed-plus-edition

Вопрос:

У меня есть TimePicker объявленный в моем представлении XAML:

 <xctk:TimePicker Grid.Column="5" Value="{Binding TimeFrame}" StartTime="00:00:0" EndTime="23:59:0" Format="Custom" FormatString="HH:mm" Margin="3 3 3 0" MinWidth="100"/>
  

Который привязывается к этому TimeFrame методу в моем классе view model:

 private DateTime _timeFrame;
public DateTime TimeFrame
{
    get { return _timeFrame; }
    set
    {
        if (value != _timeFrame)
        {
            _timeFrame = value;
            OnPropertyChanged("TimeFrame");
        }
    }
}
  

Есть ли способ ограничить выпадающий список только 30-минутными интервалами, например 07:00:00, 07:30:00 08:00:00 08:30:00 и т.д.? Я попытался установить TimeInterval свойство, показанное в https://github.com/xceedsoftware/wpftoolkit/wiki/TimePicker to TimeInterval="30" , но, похоже, при этом в выпадающем списке отображается только 00:00:00.

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

Ответ №1:

Хорошо, я только что нашел проблему.

Вам нужно использовать полный HH:mm:ss формат:

 TimeInterval="00:30:00"
  

Вместо:

 TimeInterval="30"