2012-05-17 11 views
0

У меня есть главная страница, которая получает информацию из локального xml-файла на основе currentTime.Обновить информацию на странице с течением времени?

Когда приложение запускается, оно проверяет текущее время и на основании того, что оно получает правильное значение xml и показывает его в текстовом блоке. Но это обновление noe. Я думал о том, чтобы добавить кнопку обновления на страницу, но более умные главы предлагают DispatchTimer или Timer. Что я должен использовать, и где я должен поставить код? Я очень простой пользователь, поэтому, пожалуйста, если бы вы были конкретными и приводили примеры кода, это было бы высоко оценено.

СПАСИБО ВСЕМУ :) небольшую часть моего кода.

var obj = filteredData.First(); 

    TimeSpan currentTime = myDay.TimeOfDay; 
    string result = String.Empty; 
    string Prayer = String.Empty; 

    if (currentTime >= obj.Fajr && currentTime < obj.Sunrise) 
    { 
     result = "Fajr"; 
     Prayer = obj.Fajr.ToString(@"hh\:mm"); 

    } 
    else if (currentTime >= obj.Sunrise && currentTime < obj.Zohr) 
    { 
     result = "Sunrise"; 
     Prayer = obj.Sunrise.ToString(@"hh\:mm"); 

    } 

    textBlock3.Text = result; 
    textBlock4.Text = Prayer; 

ответ

0

Это может быть лучше подходить с видом-моделью и фоновый поток, так что-то вроде:

public class PrayerViewModel : DependencyObject 
    public PrayerViewModel() 
    { 
     // TODO: Start off a new thread that Raises the PropertyChanged() Event for each property at the right time 
    } 

    public string Result 
    { 
     get 
     { 
      TimeSpan currentTime = myDay.TimeOfDay; 
      if (currentTime >= obj.Fajr && currentTime < obj.Sunrise) 
      { 
       return "Fajr"; 
      } 
      else if (currentTime >= obj.Sunrise && currentTime < obj.Zohr) 
      { 
       return "Sunrise"; 
      } 
     } 
    } 
    public string Prayer 
    { 
     get 
     { 
      TimeSpan currentTime = myDay.TimeOfDay; 
      if (currentTime >= obj.Fajr && currentTime < obj.Sunrise) 
      { 
       Prayer = obj.Fajr.ToString(@"hh\:mm"); 
      } 
      else if (currentTime >= obj.Sunrise && currentTime < obj.Zohr) 
      { 
       Prayer = obj.Sunrise.ToString(@"hh\:mm"); 
      } 
     } 
    } 
} 
Смежные вопросы