在我的点击事件中,我想在一定时间内显示不确定的进度条,然后恢复应用程序。我遇到的问题是我无法显示进度条。有人可以帮忙吗?
private void RunTestButton_Click(object sender, RoutedEventArgs e)
{
if (testRunning == false)
{
testRunning = true;
//Set progress bar visibility
PerformanceProgressbar.Visibility = Visibility.Visible;
PerformanceProgressbar.IsIndeterminate = true;
//Tell the app to pause for 5 seconds so the user sees the progress bar
//Set progress bar visibility
PerformanceProgressbar.IsIndeterminate = false;
PerformanceProgressbar.Visibility = Visibility.Collapsed;
testRunning = false;
}
}
答案 0 :(得分:1)
您可以致电Task.Delay ..和await
结果:
await Task.Delay(5000);
您需要确保将活动标记为async
:
private async void RunTestButton_Click(object sender, RoutedEventArgs e)
答案 1 :(得分:0)
PerformanceProgressbar是控件,所以你应该把它放在你的页面上(也使用淡入淡出)。
但是如果你需要在UI线程上做一些任务(你真的需要吗?)我建议你通过在页面上显示半透明边框来淡化你的页面,并在状态栏中显示ProgressIndicator。它的系统对象即使应用程序被冻结也会运行。