如何使报表查看器控件以xls格式而不是xlsx导出?

时间:2018-05-09 03:49:11

标签: c# winforms reportviewer

我们的应用程序需要能够从报表查看器控件生成.xls格式。但是,当我尝试导出到Excel时,它只给我两个选项(.xlsx和其他文件)。

为了生成.xls,我们需要使用“其他文件”选项并设置为.xls,但这会导致文件格式和扩展名不匹配,并且用户在尝试时始终会获得warning dialog box打开该文件。我怀疑它只是将文件重命名为.xls,但其格式仍为.xlsx。

是否可以为报表查看器控件将Excel类型文件的默认导出格式设置为.xls

enter image description here

图1:报告查看器显示了要导出的3种类型的文件

enter image description here

图2:选择文件时,报告查看器默认为.xlsx格式。希望它默认为.xls格式而不是

1 个答案:

答案 0 :(得分:0)

  1. 处理报告导出事件
  2. 使用ReportViewer的ExportDialog()方法并使用ListRenderingExtensions()方法查看扩展列表 可用
  3. 设置e.Cancel = true以防止重复此事件
  4. <强>代码:

        private void reportViewerControl_ReportExport(object sender, ReportExportEventArgs e)
        {
            if(e.Extension.LocalizedName.ToUpper().Equals("EXCEL"))
            {
                reportViewerControl.ExportDialog(reportViewerControl.LocalReport.ListRenderingExtensions()[0]);
                e.Cancel = true;
            }
        }