Как заставить мое wpf-приложение ждать 3 минуты перед повторной загрузкой данных? - PullRequest
2 голосов
/ 12 апреля 2011

Я использую VS2010 - WPF - C #

в моем приложении я получаю данные с веб-сервера и просматриваю их на своем интерфейсе проблема в том, что я хочу продолжать получать данные и обновлять интерфейс каждые 3 минуты, но я не знаю, как это сделать ...

Я пытался (Thread.Sleep (18000)), и это не сработало, потому что мой интерфейс вообще не показывался

Я не знаю, как использовать Таймер по этой причине, и я не мог найти то, что я ищу в другом месте

Пожалуйста, вы можете мне помочь с этим?

С наилучшими пожеланиями

Ответы [ 3 ]

2 голосов
/ 12 апреля 2011

Какая модель программирования?Запас или что-то более вменяемое с подходом MVVM?

В любом случае, используйте ТАЙМЕР для запроса обратного вызова через 3 минуты.При обратном вызове вызовите поток диспетчера окна, как только вы получите результаты вызова веб-службы.Закончено.

2 голосов
/ 12 апреля 2011

Используйте DispatcherTimer , также есть примеры, как использовать его по данной ссылке

0 голосов
/ 12 апреля 2011

Используйте такой таймер отправки

Delcare it

public System.Windows.Threading.DispatcherTimer timer1;

В конструкторе

timer1 = new System.Windows.Threading.DispatcherTimer();
timer1.Interval = TimeSpan.FromSeconds(180); // 3 mintues interval
timer1.Tick += TimerTicked; // Event for handling the fetching data

Выполняешь свою работу

 private void TimerTicked(object sender, EventArgs args)
 {
//Fetch the data
 }

timer1.start ();// Где бы вы ни хотели запустить таймер

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