Вы просто должны вставить свой код <td><span ng-if="utfDataRequest.parsedValue"> {{utfDataRequest.parsedValue}}</span></td>
, потому что если parsedValue пусто, то ничего не отобразится в <span ng-if="utfDataRequest.parsedValue"> {{utfDataRequest.parsedValue}}</span>
, поэтому ваш код
<td class="errorDescription col-sm-3">
<span ng-if="utfDataRequest.parsedValue"> {{utfDataRequest.parsedValue}}</span>
</td>
Timer
управляйте к своей форме. (Это находится в категории компонентов),Interval
свойство к 45000
(значение представляет миллисекунды),Enabled
свойство таймера к True
в конструкторе форм, или где-нибудь в Вашем коде.Tick
событие (можно получить это путем двойного щелчка по таймеру),Tick
обработчик, обновите Ваш dataGridView
Ваш обработчик будет похож на это:
private void timer1_Tick(object sender, EventArgs e)
{
// Update DataGridView
}
Если необходимо приостановить обновления по некоторым причинам, можно звонить timer1.Stop()
мешать таймеру работать, и использование timer1.Start()
запустить его снова.
Как другие предложили, используйте Таймер для перезапросов Базы данных. Единственная вещь, которую я хотел бы добавить, состоит в том, что, когда Вы повторно запрашиваете базу данных, только установите источник данных DataGridView на новую таблицу. Скорее Слияние это с существующей таблицей. Причина этого состоит в том, потому что, если пользователь находится в середине сетки, например, смотрящей на конкретную строку при сбросе DataSource к новой таблице вся сетка обновится, и они потеряют свое место. Раздражающий как ад! Если Вы объединяете его, хотя, это будет бесшовным пользователю.
Одна вещь знать при использовании метода Слияния состоит в том, что таблица должна иметь первичный ключ. Двойная проверка, чтобы удостовериться, что сам DataTable имеет первичный ключ. Не всегда делает это задерживает его от базы данных. Вы, возможно, должны сделать что-то как:
table.PrimaryKey = new DataColumn[] {table.Columns["ID"]};
Вы могли создать Таймер, который стреляет каждые 45 секунд, и обновите свой UI от его обработчика событий.
Используйте управление таймером и затем выполните Ваши обновления в определенных инкрементах, в которых Вы нуждаетесь.
Вы имеете в виду, что я должен снова связать datagridview в обработчике событий таймера?