我试着在工作中显示一个进度条,但是能见度没有改变.
private void GestureListener_PinchCompleted(object sender, PinchGestureEventArgs e)
{
progressBar.Visibility = System.Windows.Visibility.Visible;
DoWork();//quite long (4-5 seconds)
progressBar.Visibility = System.Windows.Visibility.Collapsed;
}有没有新的方法或者类似的方法?我做错了什么吗?
发布于 2014-03-02 15:10:34
在UI线程中执行DoWork(),阻塞它4到5秒。这就是您无法看到进度条的原因。
考虑在一个单独的线程中调用DoWork:
private async void GestureListener_PinchCompleted(object sender, PinchGestureEventArgs e)
{
progressBar.Visibility = System.Windows.Visibility.Visible;
await Task.Run(()=> DoWork()); //quite long (4-5 seconds)
progressBar.Visibility = System.Windows.Visibility.Collapsed;
}Windows Phone 8的异步编程
https://stackoverflow.com/questions/22129227
复制相似问题