示例#1
0
        /// <summary>
        /// Hace bajar a los hijos para que vayan a la siguiente página
        /// </summary>
        /// <param name="pageIndex">Página para que estén todos juntos</param>
        /// <param name="rd">El reportDrawable revisado</param>
        /// <param name="sumY">Cuanto hay que sumar a Y para que llegue</param>
        private void SumYToSon(int pageIndex, ReportDrawable rd, float sumY)
        {
            rd.position.AddY(sumY);
            rd.PageIndex = pageIndex;

            foreach (ReportDrawable rdSon in rd.sons)
            {
                SumYToSon(pageIndex, rdSon, sumY);
            }
        }
示例#2
0
        /// <summary>
        /// Devuelve si un hijo está en una página diferente que su padre
        /// </summary>
        /// <returns><c>true</c> if this instance is in another page,  otherwise, <c>false</c>.</returns>
        /// <param name="pageIndex">Página del padre</param>
        /// <param name="rd">Bloque a revisar</param>
        private bool IsSplitedInPages(int pageIndex, ReportDrawable rd)
        {
            if (rd.PageIndex != pageIndex)
            {
                return(true);
            }

            foreach (ReportDrawable rdSon in rd.sons)
            {
                if (IsSplitedInPages(pageIndex, rdSon))
                {
                    return(true);
                }
            }

            return(false);
        }
示例#3
0
 private void AddSon(ReportDrawable rb)
 {
     sons.Add(rb);                     // y el hijo de mi padre
     AutoGrow(rb);
 }
示例#4
0
 /// <summary>
 /// Hace un control tan grande como lo indicado por x,y, width and height.
 /// Esto se hace recursivamente
 /// </summary>
 /// <param name="drawable">The control.</param>
 internal void AutoGrow(ReportDrawable drawable)
 {
     AutoGrow(drawable.position);
 }