Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/279.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# WPF UI-以原始形式进行时要显示的新表单_C#_Wpf - Fatal编程技术网

C# WPF UI-以原始形式进行时要显示的新表单

C# WPF UI-以原始形式进行时要显示的新表单,c#,wpf,C#,Wpf,我制作了一个文件上传/下载功能,其中前端是WPF UI 我发现要使我的UI不冻结,我需要在一个单独的线程中进行上传/下载 但我还需要在上传/下载时显示进度条。我想通过显示一个带有进度条的新WPF表单来实现这一点,在上传/下载过程中,原始表单应处于非活动状态,因为用户可能不会单击任何按钮等;用户只能看到进度条在新表单中移动;完成后,新表单需要关闭,原始表单再次激活 谁能帮帮我吗 谢谢。您可以实现一个简单的进度条。以此为起点:您可以通过一个回调方法从downloader线程更新进度条,每隔一秒钟左右

我制作了一个文件上传/下载功能,其中前端是WPF UI

我发现要使我的UI不冻结,我需要在一个单独的线程中进行上传/下载

但我还需要在上传/下载时显示进度条。我想通过显示一个带有进度条的新WPF表单来实现这一点,在上传/下载过程中,原始表单应处于非活动状态,因为用户可能不会单击任何按钮等;用户只能看到进度条在新表单中移动;完成后,新表单需要关闭,原始表单再次激活

谁能帮帮我吗


谢谢。

您可以实现一个简单的进度条。以此为起点:您可以通过一个回调方法从downloader线程更新进度条,每隔一秒钟左右更新一次进度。

首先,要显示一个模式窗口,您需要做的就是

myModalWindow.ShowDialog();
如果使用Show方法,它将只显示窗口。但是,如果使用ShowDialog方法,WPF应用程序中的所有其他窗口在该窗口关闭之前不会响应用户输入

其次,您可以使用UI线程的调度程序从另一个线程更新进度条

Application.Current.Dispatcher.BeginInvoke(() => myProgressBar.Value = progress);

你能详细说明一下从原始表单中运行的子线程更新新表单进度条的部分吗?谢谢。