2011-04-08 52 views
1

我有Silverlight應用程序,它具有當前時間和日期,ia m從WCF服務中獲取此現在我想每分鐘更新當前日期和時間。更新Silverlight中每兩分鐘的當前時間

如何實現這一目標?

我的服務代碼是:

[OperationContract] 
     public DateTime GetDateTime() 
     { 
      return DateTime.Now ; 
     } 

我xaml.cs是:

void Welcome_Loaded(object sender, RoutedEventArgs e) 
     { 
      SessionService.SLWebServiceClient client = new SessionService.SLWebServiceClient(); 
      client.GetDateTimeCompleted += new EventHandler<SessionService.GetDateTimeCompletedEventArgs>(client_GetDateTimeCompleted); 
      client.GetDateTimeAsync(); 


     } 

     void client_GetDateTimeCompleted(object sender, SessionService.GetDateTimeCompletedEventArgs e) 
     { 
      lblDateTime.Text = e.Result.ToString(); 
     } 

感謝。

回答

1

您可以使用DispatcherTimer每兩分鐘調用一次WCF服務。這是如何:

// Every 2 minutes calls the timer_Tick handler 
DispatcherTimer timer = new DispatcherTimer() { Interval = new TimeSpan(0, 2, 0) }; 
timer.Tick += new EventHandler(timer_Tick); 
timer.Start(); 

private void timer_Tick(object sender, EventArgs e) 
{ 
    SessionService.SLWebServiceClient client = new SessionService.SLWebServiceClient(); 
    client.GetDateTimeCompleted += new EventHandler<SessionService.GetDateTimeCompletedEventArgs>(client_GetDateTimeCompleted); 
    client.GetDateTimeAsync(); 
} 

希望它有幫助!

布魯諾

相關問題