Сравнить текущее время с пользовательскими наборами времени в DateTimePicker

#c#

#c#

Вопрос:

 public bool CheckTime()
{
    if (DateTime.Now.TimeOfDay == dateTimePicker1.Value.TimeOfDay)
    {
        return true;
    }
    else
    {
        return false;
    }
}
  

Я также пробовал .TotalSeconds

 public bool CheckTime()
{
    if (DateTime.Now.TimeOfDay.TotalSeconds == dateTimePicker1.Value.TimeOfDay.TotalSeconds)
    {
        return true;
    }
    else
    {
        return false;
    }
}
  

dateTimePickers Формат установлен в Time .

Как я могу сравнить время, установленное в datetimepicker и текущее системное время?

Комментарии:

1. что такое вывод?

2. Обратите внимание, что TotalSeconds это a double ; оно включает доли секунды. Если вы хотите сравнить со вторым, вы должны привести его к int . Попробуйте (int)DateTime.Now.TimeOfDay.TotalSeconds == (int)dateTimePicker1.Value.TimeOfDay.TotalSeconds .

3. С какой целью? Что вы будете делать, если это так? Что вы хотите, чтобы ваша программа делала?

Ответ №1:

 (int)DateTime.Now.TimeOfDay.TotalSeconds == (int)dateTimePicker1.Value.TimeOfDay.TotalSeconds
  

Теперь это работает, СПАСИБО <3

Комментарии:

1. Кроме того, вы можете буквально просто поставить return перед этим; нет необходимости в if...else блоке.