C1FlexGrid不支持Styles导出到Excel,Border边框是通过Styles设置,因此不支持导出。
这是因为C1FlexGrid的样式和Excel的样式是完全不一样的,没有办法对应和兼容。
如果想要实现这个需求,一个可能的解决方案就是,使用ComponentOne的另一个控件C1Excel控件。
基本的解决思路就是:使用C1Excel导入数据,设置样式,然后通过Save方法导出到Excel。
代码参考:
- 01.C1XLBook excelBook = new C1XLBook();
- 02.excelBook.Load(filename);
- 03.
- 04.XLSheet sheet = excelBook.Sheets[0];
- 05.
- 06.//set Linestyle of one specific cell. Note: if the cell has no "Style" property, we have to create it.
- 07.XLCell currentCell = sheet[row, col];
- 08.if (currentCell.Style == null)
- 09.{
- 10. currentCell.Style = new XLStyle(sheet.Book);
- 11.}
- 12.
- 13.currentCell.Style.BorderColorTop = Color.Black;
- 14.currentCell.Style.BorderTop = XLLineStyleEnum.Thick;
- 15.
- 16.//Save excel file in Excel97-2003 format:
- 17.excelBook.Save (filename, FileFormat.Biff8);
复制代码 |