/// <summary>
        /// Writes the value of <paramref name="repeater"/> to the <paramref name="table"/>.
        /// </summary>
        /// <param name="table">The <see cref="MigraDoc.DocumentObjectModel.Tables.Table"/> to write to.</param>
        /// <param name="repeater">The control.</param>
        /// <param name="container">The application data container.</param>
        /// <param name="level">The depth down the control tree being rendered (affects indenting).</param>
        private void WriteValueRepeater(Table table, RepeaterControl repeater, Dictionary<string, object> container, int level)
        {
            Color backgroundColour = new Color(100 - (level * PdfConstants.AlphaMultiplier * 100), this.BorderColour.C, this.BorderColour.M, this.BorderColour.Y, this.BorderColour.K);

            table.AppendHeaderRow(this.DefaultStyle.Font.Size, repeater.Label, PdfResources.StyleNameHeaderRow, backgroundColour)
                .Format.LeftIndent = new Unit(PdfConstants.IndentMultiplier * level, UnitType.Millimeter);

            if (((object[])container[repeater.Name]).Length == 0)
            {
                return;
            }

            Dictionary<string, object>[] items = (Dictionary<string, object>[])container[repeater.Name];
            level = level < 5 ? level + 1 : level;
            foreach (Dictionary<string, object> repeaterItem in items)
            {
                this.WriteValue(table, repeater.Controls, repeaterItem, level);
            }
        }
        /// <summary>
        /// Writes the value of <paramref name="group"/> to the <paramref name="table"/>.
        /// </summary>
        /// <param name="table">The <see cref="MigraDoc.DocumentObjectModel.Tables.Table"/> to write to.</param>
        /// <param name="group">The control.</param>
        /// <param name="container">The application data container.</param>
        /// <param name="level">The depth down the control tree being rendered (affects indenting).</param>
        private void WriteValueGroup(Table table, GroupControl group, Dictionary<string, object> container, int level)
        {
            Color backgroundColour = new Color(100 - (level * PdfConstants.AlphaMultiplier * 100), this.BorderColour.C, this.BorderColour.M, this.BorderColour.Y, this.BorderColour.K);

            table.AppendHeaderRow(this.DefaultStyle.Font.Size, group.Label, PdfResources.StyleNameHeaderRow, backgroundColour)
                .Format.LeftIndent = new Unit(PdfConstants.IndentMultiplier * level, UnitType.Millimeter);
            level = level < 5 ? level + 1 : level;
            this.WriteValue(table, group.Controls, container, level);
        }