小5聊C#版本NPOI之基础样式设置
Posted 小5聊
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了小5聊C#版本NPOI之基础样式设置相关的知识,希望对你有一定的参考价值。
NPOI插件,C#版本,整理常见的样式设置
1、单元格内换行
- 效果
- 代码如下
XSSFWorkbook workbook = new XSSFWorkbook(); //创建一个工作簿
ICellStyle cellStyle = workbook.CreateCellStyle();
cellStyle.WrapText = true;//开启换行
//创建第一行
IRow row = sheet.CreateRow(0);
//给第一行第一列赋值
row.CreateCell(0, CellType.String).SetCellValue("收纳\\n化妆品\\n美妆\\n声控\\n沉浸式"); //标签
//给第一列设置样式
row.GetCell(0).CellStyle = cellStyle;
2、高宽度自适应
只能说是相对自适应,根据项目业务进行相应增减
代码
//设置自适应 - 宽度 - 循环列
for (int columnNum = 0; columnNum <= 6; columnNum++)
{
int columnWidth = sheet.GetColumnWidth(columnNum) / 256;
for (int rowNum = 1; rowNum <= sheet.LastRowNum; rowNum++)
{
IRow currentRow = sheet.GetRow(rowNum);
if (currentRow.GetCell(columnNum) != null)
{
ICell currentCell = currentRow.GetCell(columnNum);
int length = Encoding.Default.GetBytes(currentCell.ToString()).Length;
if (columnWidth < length)
{
columnWidth = length;
}
}
}
if (columnWidth > 100) columnWidth = 100;
if (columnNum == 4) columnWidth = 30;
sheet.SetColumnWidth(columnNum, columnWidth * 256);
}
//设置自适应 - 高度 - 循环行指定列
for (int rowNum = 1; rowNum <= videoList.Count; rowNum++)
{
IRow currentRow = sheet.GetRow(rowNum);
ICell currentCell = currentRow.GetCell(4); //标签
int length = Encoding.UTF8.GetBytes(currentCell.ToString()).Length;
currentRow.HeightInPoints = 20 * (length / 30 + 1);
}
3、列居中显示
4、合并单元格
1)合并行,比如:第一行的第一列和第六列合并
第一行就是:从下标0开始,到下标1结束
第一列到第六列:从下标0开始,到下标5结束
IRow baseInfo = sheet.CreateRow(0);
baseInfo.Sheet.AddMergedRegion(new NPOI.SS.Util.CellRangeAddress(0, 1, 0, 5));
2)合并格,比如:第六列的第一行到第六行合并
IRow baseInfo = sheet.CreateRow(0);
baseInfo.Sheet.AddMergedRegion(new NPOI.SS.Util.CellRangeAddress(0, 5, 5, 5));
5、单元格填充
- 效果
- 代码
//先创建好样式
ICellStyle cellStyleBgColor = workbook.CreateCellStyle(); // 创建单元格样式
cellStyleBgColor.FillForegroundColor = IndexedColors.Grey25Percent.Index; // 选择填充颜色
cellStyleBgColor.FillPattern = FillPattern.SolidForeground; // 填充方式
//再给单元格赋值样式
IRow rowTitle = sheet.CreateRow(5);//创建表头行
ICell cell = rowTitle.GetCell(indexCell);
cell.CellStyle = cellStyleBgColor;
。。。未完待续
以上是关于小5聊C#版本NPOI之基础样式设置的主要内容,如果未能解决你的问题,请参考以下文章
小5聊C#基础之调用cmd执行命令并且执行遇到需要输入Y或N的情况