XPTable.Models.Table.GetRenderedRowHeight C# (CSharp) Method

GetRenderedRowHeight() private method

Returns the actual height for this row when rendered. If there is no word wrapped cell here then just return the default row height.
private GetRenderedRowHeight ( Graphics g, Row row ) : int
g System.Drawing.Graphics
row Row
return int
        int GetRenderedRowHeight(Graphics g, Row row)
        {
            int height = row.Height;
            if (row.HasWordWrapCell)
            {
                ColumnCollection columns = this.ColumnModel.Columns;
                foreach (Cell varCell in row.Cells)
                {
                    int column = varCell.InternalIndex;
                    if (varCell.WordWrap)
                    {
                        // get the renderer for the cells column
                        ICellRenderer renderer = columns[column].Renderer;
                        if (renderer == null)
                        {
                            // get the default renderer for the column
                            renderer = this.ColumnModel.GetCellRenderer(columns[column].GetDefaultRendererName());
                        }

                        // When calling renderer.GetCellHeight(), only the width of the bounds is used.
                        int w = this.GetColumnWidth(column, varCell);
                        renderer.Bounds = new Rectangle(this.GetColumnLeft(column), 0, w, 0);

                        // If this comes back zero then we have to go with the default
                        int newheight = renderer.GetCellHeight(g, varCell);
                        //Console.WriteLine("    GetRenderedRowHeight colwidth={0} rowheight={1}", w, newheight);
                        if (newheight == 0)
                            newheight = row.Height;
                        height = Math.Max(newheight, height);
                    }
                }
            }
            return height;
        }
Table