如何异步导出PivotGridControl数据?

时间:2013-06-25 13:35:45

标签: c# wpf devexpress

我正在使用DevExpress.Xpf.PivotGrid.PivotGridControl并且用户想要加载大量数据(+50,000)。之后他想导出那些数据。

我正在调用这种方法:

this.pivotGridControl.ExportToCsv("C:\\example.csv");

它有效,但由于它是大量数据,因此它会将我的UI挂起大约10秒钟。

由于pivotGridControl是用户界面中控件的一个实例,我知道我无法使用ThreadPool.QueueUserWorkItemBackgroundWorker。两者都抛出以下消息(没有内部异常):

The calling thread must be STA, because many UI components require this.

是否可以在不阻止UI的情况下从PivotGridControl导出数据?

1 个答案:

答案 0 :(得分:0)

您可以开始一个新主题

        var ExportToCsvThread = new Thread(x => this.pivotGridControl.ExportToCsv("C:\\example.csv"););
        ExportToCsvThread.Name = "ExportToCsv Thread";
        ExportToCsvThread.Start();