Devexpress 即使选项卡已关闭,DevXPress XtraReport仍在后台运行

Devexpress 即使选项卡已关闭,DevXPress XtraReport仍在后台运行,devexpress,xtrareport,Devexpress,Xtrareport,我已经创建了一个XtraReport,它有5个子报告 这份报告相当大,有10000页。在生成报告时,如果关闭浏览器的选项卡,报告仍在后台生成,而如果单击进度栏的“取消”按钮,报告生成过程将被放弃 我的问题是,当我关闭浏览器的选项卡时,如何停止生成报告?我已经在他们的在线演示中看到了这一点。简而言之,您可以在卸载、聚焦、模糊之前对窗口事件执行此操作。 来自demos.devexpress.com/MVCxReportDemos的代码: (函数(){ var doWithViewer=函数(func

我已经创建了一个XtraReport,它有5个子报告

这份报告相当大,有10000页。在生成报告时,如果关闭浏览器的选项卡,报告仍在后台生成,而如果单击进度栏的“取消”按钮,报告生成过程将被放弃


我的问题是,当我关闭浏览器的选项卡时,如何停止生成报告?

我已经在他们的在线演示中看到了这一点。简而言之,您可以在卸载、聚焦、模糊之前对窗口事件执行此操作。 来自demos.devexpress.com/MVCxReportDemos的代码:

(函数(){
var doWithViewer=函数(func){
var viewer=window['webDocumentViewer'];
查看器&函数(查看器);
};
var停止超时;
addEventListener(“focus”,function(){stopTimeout&&clearTimeout(stopTimeout);});
addEventListener(“blur”,function()){
stopTimeout&&clearTimeout(stopTimeout);
stopTimeout=setTimeout(函数(){
doWithViewer(函数(查看器){
var reportPreview=viewer.GetReportPreview();
reportPreview&&reportPreview.documentBuilding()&&reportPreview.stopBuild();
});
}, 3000);
});
addEventListener(“beforeunload”,function()){
doWithViewer(函数(查看器){
setTimeout(函数(){viewer.Close();},1);
});
});
})()