//----------------------------------------------------------------------------------------------------x /// <summary>Calculates the bottom position of the row.</summary> /// <param name="bCommitted">true: bottom position of committed rows; false: bottom position of all rows. </param> /// <returns>The bottom position in points (1/72 inch).</returns> internal Double rCalculateBottomPos(Boolean bCommitted) { Debug.Assert(!bCommitted || Object.ReferenceEquals(tlmBase.tlmRow_Committed, this)); Double rY = 0; for (Int32 iCol = 0; iCol < tlmBase.al_TlmColumn.Count; iCol++) { TlmCell cell = aTlmCell[iCol]; if (cell == null || cell.tlmColumn_Start.iIndex != iCol || cell.tlmRow_End.iIndex != iIndex) { continue; } Double rMaxY = cell.rCalculateMaxY(bCommitted); rMaxY += cell.rMarginTop + cell.rMarginBottom + cell.tlmRow_Start.rPosTop; if (rMaxY > rY) { rY = rMaxY; } } Debug.Assert(!Double.IsNaN(rY)); return(rY); }