在执行方法时无法与 wpf 元素交互



>我创建了一个带有 2 个按钮的 WPF 应用程序。单击第一个按钮执行cmd并等待命令完成,因为我需要在执行完成后读取结果文件。在第二个按钮上,单击我正在通过进程终止停止执行cmd。

但是在开始命令执行后,我无法在完成cmd的执行之前停止执行。

有没有并行执行的方法?

"开始"按钮代码

string filename = System.IO.Path.Combine(Directory.GetCurrentDirectory(), "nunit-console.exe");
Process proc = Process.Start(filename, "/result:" + resultFile + ".xml " + fileName);
proc.WaitForExit();

只需删除proc.WaitForExit();即可。此行阻塞了接口线程,阻止了第二个按钮单击注册。

System.Diagnostics.Process proc;
private void Btn1Click(object sender, RoutedEventArgs e)
{
string filename = System.IO.Path.Combine(Directory.GetCurrentDirectory(), "nunit-console.exe");
proc = Process.Start(filename, "/result:" + resultFile + ".xml " + fileName);
}
private void Btn2Click(object sender, RoutedEventArgs e)
{
if (proc != null)
proc.Kill();
}

最新更新