我是 windows phone7 的新手。
我有 3 个 Web 服务。来自三个 Web 服务,我正在获取数据并存储到我的本地数据库中。
我在应用程序中放置了一个进度条,它将显示从这 3 个 Web 服务获取数据的进度。
我不知道如何使用从服务中获取数据来更新进度条。
请帮我。
谢谢
我是 windows phone7 的新手。
我有 3 个 Web 服务。来自三个 Web 服务,我正在获取数据并存储到我的本地数据库中。
我在应用程序中放置了一个进度条,它将显示从这 3 个 Web 服务获取数据的进度。
我不知道如何使用从服务中获取数据来更新进度条。
请帮我。
谢谢
你如何加载这些数据?
您使用的是 WebClient 还是包含了 WebReference?
编辑:
为所有 3 个 WebClient 注册事件并执行以下操作:
// proptery to bind to the progress bar
public int ProgressBarPercentage
{
get {
return (_request1Percentage + _request2Percentage + request3Percentage)/3
}
}
private int _request1Percentage;
private int _request2Percentage;
private int _request3Percentage;
在事件处理程序中,您只需设置此处理程序的字段并为 ProgressBarPercentage 触发 NotifyPropertyChanged(如果您使用的是 VM)。
我采用了一个全局静态变量。
public static int progress = 0;
我有三个网络方法,所以我有三个下载字符串完成的 argumnet。
在我写的每个下载字符串完成的 evnt 函数中
progress++;
在构造函数中,我使用了一个计时器来检查每一秒的进度状态
DispatcherTimer timer = new DispatcherTimer();
timer.Interval = TimeSpan.FromSeconds(1);
timer.Tick += delegate(object s, EventArgs args) { if (progress == 3) { NavigationService.Navigate(new Uri("/Home.xaml", UriKind.Relative)); timer.Stop(); } };
timer.Start();
所以在下载完所有内容后,我转到了我的下一页谢谢