Наконец-то нашли причину.Если текущее время, извлеченное с использованием now.ToString("t")
, равно 12:30, и оно соответствует сохраненному времени 12:30, тогда условие истинно и отображается уведомление, но тогда условие if(item.Date.Trim() == date.Trim() && item.Time.Trim() == now.ToString("t").Trim())
никогда не становится ложным.Потому что время, которое я получаю каждую секунду, используя это now.ToString("t")
, никогда не обновляется.
Я имею в виду, когда я впервые получил now.ToString("t")
при проверке состояния, он всегда остается таким же, как 12:30
.это никогда не увеличивается.И причина этого была в том, что now
было определено глобально как DateTime now = DateTime.Now;
, поэтому не знаю почему, но каждый раз, когда я запускаю now.ToString("t")
в локальной области, я получаю то же время, что и при первом запуске.
Итак, я объявил теперь локально в своей функции, и каждую секунду этот DateTime now = DateTime.Now;
также запускается до now.ToString("t")
, и я получаю самое последнее время