Дата и время UWP

140
11 января 2018, 19:10

Столкнулся с проблемой байдинга даты и времени. Идея такая: дата выбирается в CalendarDatePicker, а время указывается в TimePicker. Пробовал осуществлять привязку в DateTime, но ничего из этого не вышло. Каким образом можно осуществить привязку даты и времени к одному компоненту, без применения обработчиков событий?

Answer 1

Попробуйте положить в VM два свойства: одно для даты, одно для времени. Получится как-то так:

DateTimeOffset justday;
TimeSpan justtime;
public DateTimeOffset JustDay
{
    get => justday;
    set =>
    {
        if (justday != value)
        {
            justday = value;
            NotifyPropertyChanged();
            NotifyPropertyChanged(nameof(Date));
        }
    }
}
public TimeSpan JustTime
{
    get => justtime;
    set =>
    {
        if (justtime != value)
        {
            justtime = value;
            NotifyPropertyChanged();
            NotifyPropertyChanged(nameof(Date));
        }
    }
}
public DateTime Date => day.Date + time;

К CalendarDatePicker'у привязывайте JustDay, к TimePicker'у — JustTime. Результат читайте в Date.

READ ALSO
Как после события Click выполнить свой метод?

Как после события Click выполнить свой метод?

На форме расположен ToolStrip, в котором есть несколько кнопокПри нажатии на кнопку отрабатывает событие ItemClicked, затем отрабатывает метод Click конкретной...

159
Отличие между InvokeRepeating и Coroutines

Отличие между InvokeRepeating и Coroutines

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

157
DbContext для TMDb

DbContext для TMDb

Здравствуйте

176
При установке свойства TopMost приложение воспринимается как троян

При установке свойства TopMost приложение воспринимается как троян

Писал Winform-приложение, чтобы делать скриншоты выбранной области экрана (аналог "Ножниц" от Windows)

166