/// <summary>
        /// Initializes a new instance of the <see cref="NumerateData"/> class.
        /// </summary>
        /// <param name="parameter">Параметр для нумерации</param>
        /// <param name="startValue">Начальное числовое значение</param>
        /// <param name="prefix">Префикс</param>
        /// <param name="suffix">Суффикс</param>
        /// <param name="orderDirection">Направление нумерации (по возрастанию или убыванию)</param>
        protected NumerateData(
            ExtParameter parameter,
            string startValue,
            string prefix,
            string suffix,
            OrderDirection orderDirection)
        {
            Parameter     = parameter;
            StartValue    = startValue;
            StartValueInt = int.Parse(startValue);
            var leadingZeroCount = 0;

            foreach (var c in startValue)
            {
                if (c == '0')
                {
                    leadingZeroCount++;
                }
                else
                {
                    break;
                }
            }

            leadingZeroCount++;

            Format = $"{{0:{new string('0', leadingZeroCount)}}}";

            Prefix         = prefix;
            Suffix         = suffix;
            OrderDirection = orderDirection;
        }
 /// <summary>
 /// Initializes a new instance of the <see cref="InScheduleNumerateData"/> class.
 /// </summary>
 /// <param name="parameter">Параметр</param>
 /// <param name="startValue">Начальное числовое значение</param>
 /// <param name="prefix">Префикс</param>
 /// <param name="suffix">Суффикс</param>
 /// <param name="orderDirection">Направление нумерации (по возрастанию или убыванию)</param>
 /// <param name="inScheduleNotItemizedAlgorithm">Алгоритм поиска элементов в спецификации со снятой галочкой "Для каждого элемента"</param>
 public InScheduleNumerateData(
     ExtParameter parameter,
     string startValue,
     string prefix,
     string suffix,
     OrderDirection orderDirection,
     InScheduleNotItemizedAlgorithm inScheduleNotItemizedAlgorithm)
     : base(parameter, startValue, prefix, suffix, orderDirection)
 {
     InScheduleNotItemizedAlgorithm = inScheduleNotItemizedAlgorithm;
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="InViewNumerateData"/> class.
 /// </summary>
 /// <param name="parameter">Параметр</param>
 /// <param name="startValue">Начальное числовое значение</param>
 /// <param name="prefix">Префикс</param>
 /// <param name="suffix">Суффикс</param>
 /// <param name="locationOrder">Направление нумерации по положению элементов</param>
 /// <param name="orderDirection">Направление нумерации (по возрастанию или убыванию)</param>
 public InViewNumerateData(
     ExtParameter parameter,
     string startValue,
     string prefix,
     string suffix,
     LocationOrder locationOrder,
     OrderDirection orderDirection)
     : base(parameter, startValue, prefix, suffix, orderDirection)
 {
     LocationOrder = locationOrder;
 }