本文,将介绍如何将ComponentOne Chart for WPF导出到excel文件。
具体的方法如下:
1.使用C1.WPF.C1Chart.Extended,导出C1Chart到MemoryStream object。
2.通过C1Excel control for WPF控件,使用上步的memorystream创建Excel文件。
保存C1WPFChart到MemoryStream
第一步是保存c1Chart到memerystream。我们需要添加引用到工程里:C1.WPF.C1Chart.Extended.dll。
实现的代码如下:
c1Chart1.View.Background = Brushes.White; System.IO.MemoryStream ms = new System.IO.MemoryStream(); c1Chart1.SaveImage(ms, ImageFormat.Png);
保存MemoryStream到Excel文件
为了保存到excel文件,我们使用C1.WPF.Excel类库的C1XLBook对象。将上个步骤创建的memorystream渲染到BitmapImage对象里,然后在WritableBitmap使用。将WritableBitmap对象添加到excel的sheet里,然后使用C1XLBook.Save方法保存excel文件。
代码如下:
//Save Chart image in excel file C1XLBook wb = new C1XLBook(); BitmapImage bmps =new BitmapImage(); bmps.BeginInit(); bmps.StreamSource = ms; bmps.EndInit(); WriteableBitmap img = new WriteableBitmap(bmps); XLSheet sheet = wb.Sheets[0]; sheet[0, 0].Value = img ; wb.Save("ChartExcelFile.xls");
请下载代码查看具体的实现: