2012-01-20 36 views
0

我正在显示来自服务器的图像。服务器中的图像每秒都在变化。我希望在我的应用程序图像应该在一秒钟后自动更改。请提出我缺乏概念的地方。 M使用此代码。 这个过程将开始时,我会选择我的形象。如何在Windows 7手机中每秒钟刷新图像

private void image1_Tap(object sender, GestureEventArgs e) 
     { 
      System.Windows.Threading.DispatcherTimer dt = new System.Windows.Threading.DispatcherTimer(); 
      dt.Interval = new TimeSpan(0, 0, 0, 0, 1000); // 500 Milliseconds 
      dt.Tick += new EventHandler(dt_Tick); 
      dt.Start(); 


     } 

这是调用这个方法。

void dt_Tick(object sender, EventArgs e) 
{ 
    status.Text = "chking" + counter++; 

    // Do Stuff here. 
      image1.Source = null; 
      Uri imgUri = new Uri(base_url,UriKind.Absolute); 
      BitmapImage BI = new BitmapImage(imgUri); 
      int H = BI.PixelHeight; 
      int w = BI.PixelWidth; 
      image1.Source = BI; 
    } 

在这段代码中,我的计数器工作正常,status.Text在每一秒都成功改变。但是,在它不变的情况下,图像会发生一次变化。 Kinldy建议我在哪里犯错误。

在此先感谢 拉夫古普塔

回答

0

我想你应该申报System.Windows.Threading.DispatcherTimer DT =新System.Windows.Threading.DispatcherTimer();作为成员变量而不是在图像点击事件中声明它。

+0

嗨,我按你的建议。但它不起作用。 –

+0

您是否确定dt_Tick每1000毫秒运行一次? (带有调试文本) –

+0

int H = BI.PixelHeight; int w = BI.PixelWidth;是从来没有使用 –

0

我在wp8应用程序中从相机中抓取图像时做同样的事情。我将包含当前日期时间值的URL作为url-param保存在我的viewmodel中。当我想刷新时,我只是重置我的URL属性。

这是我的样品: this.MyUrlProperty =的String.Format( “{0}时间戳= {1:YYYY-MM-DD HH:MM:SS:FFF}?”,_originalCameraUrl,DateTime.Now);

适用于我...