Ejemplo n.º 1
0
        internal override object PublishClone(AutomaticSubtotalContext context)
        {
            TablixCellBase tablixCellBase = (TablixCellBase)base.PublishClone(context);

            if (m_cellContents != null)
            {
                tablixCellBase.m_cellContents = (ReportItem)m_cellContents.PublishClone(context);
                if (m_altCellContents != null)
                {
                    Global.Tracer.Assert(tablixCellBase.m_cellContents is CustomReportItem);
                    tablixCellBase.m_altCellContents = (ReportItem)m_altCellContents.PublishClone(context);
                    ((CustomReportItem)tablixCellBase.m_cellContents).AltReportItem = tablixCellBase.m_altCellContents;
                }
            }
            return(tablixCellBase);
        }
Ejemplo n.º 2
0
        internal object PublishClone(AutomaticSubtotalContext context, bool isClonedDynamic)
        {
            TablixHeader tablixHeader = (TablixHeader)base.PublishClone(context);

            if (m_size != null)
            {
                tablixHeader.m_size = (string)m_size.Clone();
            }
            if (m_cellContents != null)
            {
                if (isClonedDynamic)
                {
                    ExpressionInfo meDotValueExpression = null;
                    Rectangle      rectangle            = new Rectangle(context.GenerateID(), context.GenerateID(), context.CurrentDataRegion);
                    rectangle.Name = context.CreateUniqueReportItemName(m_cellContents.Name, emptyRectangle: true, isClone: false);
                    Style styleClass = m_cellContents.StyleClass;
                    if (styleClass != null)
                    {
                        Style    style = new Style(ConstructionPhase.Publishing);
                        string[] stylesForEmptyRectangleInSubtotals = m_StylesForEmptyRectangleInSubtotals;
                        foreach (string name in stylesForEmptyRectangleInSubtotals)
                        {
                            AddAttribute(context, styleClass, style, name, meDotValueExpression);
                        }
                        rectangle.StyleClass = style;
                    }
                    tablixHeader.m_cellContents = rectangle;
                }
                else
                {
                    tablixHeader.m_cellContents = (ReportItem)m_cellContents.PublishClone(context);
                    if (m_altCellContents != null)
                    {
                        Global.Tracer.Assert(tablixHeader.m_cellContents is CustomReportItem);
                        tablixHeader.m_altCellContents = (ReportItem)m_altCellContents.PublishClone(context);
                        ((CustomReportItem)tablixHeader.m_cellContents).AltReportItem = tablixHeader.m_altCellContents;
                    }
                }
            }
            return(tablixHeader);
        }