程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> Npoi 解決下拉列表 String literals in formulas can't be bigger than 255 Chars ASCII,npoiliterals

Npoi 解決下拉列表 String literals in formulas can't be bigger than 255 Chars ASCII,npoiliterals

編輯:C#入門知識

Npoi 解決下拉列表 String literals in formulas can't be bigger than 255 Chars ASCII,npoiliterals


代碼:

1 public static void dropDownList(string[] datas, string filePath) 2 { 3 HSSFWorkbook workbook = new HSSFWorkbook(); 4 ISheet sheet = workbook.CreateSheet("下拉列表測試"); 5 ISheet hidden = workbook.CreateSheet("hidden"); 6 //數據源sheet頁不顯示 7 workbook.SetSheetHidden(workbook.GetSheetIndex(hidden), true); 8 ICellStyle style = workbook.CreateCellStyle(); 9 style.DataFormat = HSSFDataFormat.GetBuiltinFormat("0"); 10 style.Alignment = HorizontalAlignment.Center; 11 style.VerticalAlignment = VerticalAlignment.Center; 12 IRow row = null; 13 ICell cell = null; 14 for (int i = 0; i < datas.Length; i++) 15 { 16 row = hidden.CreateRow(i); 17 cell = row.CreateCell(0); 18 cell.SetCellValue(datas[i]); 19 } 20 IName namedCell = workbook.CreateName(); 21 namedCell.NameName = "hidden"; 22 namedCell.RefersToFormula = "hidden!A$1:A$" + datas.Length; 23 HSSFDataValidationHelper dvHelper = new HSSFDataValidationHelper(sheet as HSSFSheet); 24 IDataValidationConstraint dvConstraint = (IDataValidationConstraint)dvHelper.CreateFormulaListConstraint("hidden"); 25 CellRangeAddressList addressList = null; 26 HSSFDataValidation validation = null; 27 for (int i = 0; i < datas.Length; i++) 28 { 29 row = sheet.CreateRow(i); 30 cell = row.CreateCell(0); 31 cell.CellStyle = style; 32 addressList = new CellRangeAddressList(i, i, 0, 0); 33 validation = (HSSFDataValidation)dvHelper.CreateValidation(dvConstraint, addressList); 34 sheet.AddValidationData(validation); 35 } 36 37 FileStream stream = new FileStream(filePath, FileMode.OpenOrCreate); 38 workbook.Write(stream); 39 stream.Close(); 40 } View Code

調用:

 1 static void Main(string[] args)
 2 {
 3     int max = 100;
 4     string[] datas = new string[max];
 5     for (int i = 0; i < max; i++)
 6     {
 7         datas[i] = "" + i;
 8     }
 9 
10     string filePath = @"F:\\test.xls";
11     dropDownList(datas, filePath);
12 
13     Console.Read();
14 }

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved