/// <summary>
 /// Creates an instance of <see cref="ExcelDataValidation"/> out of the given parameters.
 /// </summary>
 /// <param name="type"></param>
 /// <param name="worksheet"></param>
 /// <param name="address"></param>
 /// <param name="itemElementNode"></param>
 /// <returns></returns>
 public static ExcelDataValidation Create(ExcelDataValidationType type, ExcelWorksheet worksheet, string address, XmlNode itemElementNode)
 {
     Require.Argument(type).IsNotNull("validationType");
     switch (type.Type)
     {
         case eDataValidationType.TextLength:
         case eDataValidationType.Whole:
             return new ExcelDataValidationInt(worksheet, address, type, itemElementNode);
         case eDataValidationType.Decimal:
             return new ExcelDataValidationDecimal(worksheet, address, type, itemElementNode);
         case eDataValidationType.List:
             return new ExcelDataValidationList(worksheet, address, type, itemElementNode);
         case eDataValidationType.DateTime:
             return new ExcelDataValidationDateTime(worksheet, address, type, itemElementNode);
         case eDataValidationType.Time:
             return new ExcelDataValidationTime(worksheet, address, type, itemElementNode);
         case eDataValidationType.Custom:
             return new ExcelDataValidationCustom(worksheet, address, type, itemElementNode);
         default:
             throw new InvalidOperationException("Non supported validationtype: " + type.Type.ToString());
     }
 }
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="worksheet"></param>
 /// <param name="address"></param>
 /// <param name="validationType"></param>
 /// <param name="itemElementNode"></param>
 /// <param name="namespaceManager">Namespace manager, for test purposes</param>
 internal ExcelDataValidationList(ExcelWorksheet worksheet, string address, ExcelDataValidationType validationType, XmlNode itemElementNode, XmlNamespaceManager namespaceManager)
     : base(worksheet, address, validationType, itemElementNode, namespaceManager)
 {
     Formula = new ExcelDataValidationFormulaList(NameSpaceManager, TopNode, _formula1Path);
 }
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="worksheet"></param>
 /// <param name="address"></param>
 /// <param name="validationType"></param>
 internal ExcelDataValidationList(ExcelWorksheet worksheet, string address, ExcelDataValidationType validationType)
     : base(worksheet, address, validationType)
 {
     Formula = new ExcelDataValidationFormulaList(NameSpaceManager, TopNode, _formula1Path);
 }
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="worksheet"></param>
 /// <param name="address"></param>
 /// <param name="validationType"></param>
 /// <param name="itemElementNode"></param>
 internal ExcelDataValidationTime(ExcelWorksheet worksheet, string address, ExcelDataValidationType validationType, XmlNode itemElementNode)
     : base(worksheet, address, validationType, itemElementNode)
 {
     Formula  = new ExcelDataValidationFormulaTime(NameSpaceManager, TopNode, _formula1Path);
     Formula2 = new ExcelDataValidationFormulaTime(NameSpaceManager, TopNode, _formula2Path);
 }
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="worksheet">Worksheet that owns the validation</param>
 /// <param name="itemElementNode">Xml top node (dataValidations)</param>
 /// <param name="validationType">Data validation type</param>
 /// <param name="address">address for data validation</param>
 internal ExcelDataValidationWithFormula2(ExcelWorksheet worksheet, string address, ExcelDataValidationType validationType, XmlNode itemElementNode)
     : base(worksheet, address, validationType, itemElementNode)
 {
 }
예제 #8
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="worksheet">worksheet that owns the validation</param>
 /// <param name="itemElementNode">Xml top node (dataValidations)</param>
 /// <param name="validationType">Data validation type</param>
 /// <param name="address">address for data validation</param>
 internal ExcelDataValidation(ExcelWorksheet worksheet, string address, ExcelDataValidationType validationType, XmlNode itemElementNode)
     : this(worksheet, address, validationType, itemElementNode, null)
 {
 }