Поделиться через


TimePicker.SelectedTime Свойство

Определение

Возвращает или задает время, выбранное в данный момент в элементе выбора времени.

public:
 property IReference<TimeSpan> ^ SelectedTime { IReference<TimeSpan> ^ get(); void set(IReference<TimeSpan> ^ value); };
IReference<TimeSpan> SelectedTime();

void SelectedTime(IReference<TimeSpan> value);
public System.Nullable<System.TimeSpan> SelectedTime { get; set; }
var iReference = timePicker.selectedTime;
timePicker.selectedTime = iReference;
Public Property SelectedTime As Nullable(Of TimeSpan)

Значение свойства

Время, выбранное в данный момент в окне выбора времени.

Требования к Windows

Семейство устройств
Windows 10, version 1809 (появилось в 10.0.17763.0)
API contract
Windows.Foundation.UniversalApiContract (появилось в v7.0)

Примеры

Здесь свойство SelectedTime используется для сравнения выбранного времени с текущим временем.

Обратите внимание, что, так как свойство SelectedTime допускает значение NULL, необходимо явно привести его к DateTime следующим образом: DateTime myTime = (DateTime)(DateTime.Today + checkTimePicker.SelectedTime);.

Элемент выбора времени, кнопка и текстовая метка.

<StackPanel>
    <TimePicker x:Name="checkTimePicker"/>
    <Button Content="Check time" Click="{x:Bind CheckTime}"/>
    <TextBlock x:Name="resultText"/>
</StackPanel>
private void CheckTime()
{
    // Using the SelectedTime property (nullable requires cast to DateTime).
    DateTime myTime = (DateTime)(DateTime.Today + checkTimePicker.SelectedTime);
    if (DateTime.Now >= myTime)
    {
        resultText.Text = "Your selected time has already past.";
    }
    else
    {
        string hrs = (myTime - DateTime.Now).Hours.ToString();
        string mins = (myTime - DateTime.Now).Minutes.ToString();
        resultText.Text = string.Format("Your selected time is {0} hours, {1} minutes from now.", hrs, mins);
    }
}

Комментарии

Элемент управления "Выбор времени" имеет APITimeChanged/ и SelectedTime/SelectedTimeChanged. Разница между ними заключается в том, что свойство Time не допускает значения NULL, тогда как свойство SelectedTime допускает значение NULL.

Значение SelectedTime используется для внесения данных в элемент выбора времени. По умолчанию установлено значение null. Если свойство SelectedTime имеет значение null, в свойстве Time для TimeSpan задается значение 0. В противном случае значение Time синхронизируется со значением SelectedTime. Если свойство SelectedTime имеет значение null, управляющий элемент выбора будет иметь значение "не задано" и отображать имена полей вместо времени.

Время не увеличивается в режиме реального времени (как часы), если вы не предоставите привязку кода к некоторому значению, которое отслеживает текущее время во время работы приложения.

Значение времени можно задать как атрибут в XAML. Это, вероятно, проще всего, если вы уже объявляете объект TimePicker в XAML и не используете привязки для значения времени. Используйте строку в формате Чч:Мм , где Чч — часы и может находиться в диапазоне от 0 до 23, а Мм — минуты и могут быть в диапазоне от 0 до 59. "0" может быть начальным символом в Hh или Mm и обычно включается для ясности любых значений от 0 до 9. Например, "9:5" и "09:05" являются допустимыми и представляют одно и то же время, но "09:05" легче читать в разметке.

Чтобы задать время в коде, доступны различные методы в зависимости от языка программирования. Значение представлено как System.TimeSpan для C# и Visual Basic или Windows.Foundation.TimeSpan для расширений компонентов Visual C++ (C++/CX). Вероятно, самый простой способ получить значение System.TimeSpan , которое подходит для SelectedTime , — использовать статический метод TimeSpan.Parse. Используйте строку в формате Чч:Мм (часы:минуты).

Независимо от того, задано ли оно в коде или XAML, класс TimePicker имеет логику приведения для значения, которое он сохраняет при попытке задать. Все значения дней игнорируются. Значения секунд игнорируются (например, в течение 30 секунд не округляются до следующей минуты). Доли секунд игнорируются. Значения не переносят вокруг (например, недопустимое значение "24:00"). Минимальное значение в — TimeSpan время 0 (00:00, полночь), а максимальное значение — 23:59. Значения за пределами диапазона вызывают исключения, но в зависимости от особенностей исключения могут возникать в конструкции, а не в TimeSpan проверке и приведении SelectedTime.

Чтобы задать SelectedTime значение в расширениях компонентов Visual C++ (C++/CX), необходимо задать Duration поле структуры TimeSpan . Duration указывает время в 100 единицах наносекунд; напишите собственную логику для преобразования в представления "часы:минуты" и "из".

Любое значение, заданное в SelectedTime коде или XAML, указывает начальное значение, отображаемое в элементе управления . В приложении во время выполнения это значение обычно задается пользователем во всплывающем элементе средства выбора времени. Время, выбранное пользователем, устанавливается, а событие SelectedTimeChanged возникает, когда пользователь вносит изменения и нажимает кнопку проверка метки во всплывающем элементе выбора времени, чтобы зафиксировать выбор.

Применяется к