/// <summary>
/// 指定单元格位置添加下拉项
/// </summary>
/// <param name="sheetIndex">指定页</param>
/// <param name="startRow">起始行</param>
/// <param name="colIndex">指定列</param>
/// <param name="rowNumber">多少行</param>
/// <param name="vals">"A,B,C,ALL".Split(',')</param>
internal static void SetCellDropdownList(int sheetIndex, int startRow, int colIndex, int rowNumber, string[] vals)
{
ISheet sheet = workbook.GetSheetAt(sheetIndex);
// 定义数据验证的帮助类
var validationHelper = new XSSFDataValidationHelper((XSSFSheet)sheet);
// 定义数据验证的约束条件,这里是序列类型,即下拉列表
var validationConstraint = validationHelper.CreateExplicitListConstraint(vals);
// 设置数据验证的范围
var addressList = new CellRangeAddressList(startRow, startRow + rowNumber - 1, colIndex, colIndex);
// 创建数据验证对象并设置其属性
var validation = validationHelper.CreateValidation(validationConstraint, addressList);
//validation.ErrorStyle = DataValidation.ErrorStyle.Stop;
validation.ShowErrorBox = true;
validation.CreatePromptBox("请选择一个选项", string.Join(",", vals));
// 将数据验证添加到工作表
sheet.AddValidationData(validation);
}