title: Dynamic XtraReport gives me a lot of spacing between lines in Detail
body: <p>I am writing a program that creates invoices dynamically using Excel files. Everything works fine, except that the report Detail section shows a lot of spacing between lines, up to 2' spacing. I am using a bound label to create the lines. I have read that using a <strong>XRRichText</strong> can help but it didn't. Can you please help me?</p>
  
  <p><strong>Report:</strong></p>
  
  <pre><code>public partial class XtraReport1 : DevExpress.XtraReports.UI.XtraReport
  {
      public XtraReport1()
      {
          InitializeComponent();
      }
  
      public void AddBoundLabel(String bindingMember, Rectangle bounds)
      {
          XRLabel label = new XRLabel();
          Detail.Controls.Add(label);
  
          label.Font = new Font("Arial", 8);
          label.Location = bounds.Location;
          label.Size = bounds.Size;
          label.DataBindings.Add("Text", null, bindingMember);
          label.CanGrow = true;
          label.CanShrink = true;
          label.HeightF -= 50;
          label.Padding = 0;
      }
  
      private void xrLabel_BeforePrint(object sender, System.Drawing.Printing.PrintEventArgs e)
      {
          XRRichText label = sender as XRRichText;
          e.Cancel = true;
  
          label.HeightF = 1 ;
          label.Padding = 0;
      }
  }
  </code></pre>
  
  <p><strong>Report Generation:</strong></p>
  
  <pre><code> private void button1_Click(object sender, EventArgs e)
  
      {
          int cantidad;
          string codigo, descripcion;
          double pU, pT;
          ArrayList listBindingSource = new ArrayList();
          List&lt;String&gt; myList = dataGridView1.DataSource as List&lt;String&gt;;
  
          for(int i = 0; i&lt; dataGridView1.Rows.Count; i++)
          {
              cantidad = Convert.ToInt16(dataGridView1.Rows[i].Cells[0].Value);
              codigo = dataGridView1.Rows[i].Cells[1].Value.ToString();
              descripcion = dataGridView1.Rows[i].Cells[2].Value.ToString();
              pU = Convert.ToDouble(dataGridView1.Rows[i].Cells[3].Value);
              pT = Convert.ToDouble(dataGridView1.Rows[i].Cells[4].Value);
              listBindingSource.Add(new FacturaRecord(cantidad, codigo, descripcion, pU, pT));
          }
  
          XtraReport1 report = new XtraReport1();
          report.Margins = new System.Drawing.Printing.Margins(100, 100, 25, 25);
          report.DataSource = listBindingSource;
  
          report.xrLabel6.Text = String.Format("Date: {0}", dateTimePicker1.Value.ToShortDateString());
          report.xrLabel11.Text = String.Format("Invoice Number {0}", textBox1.Text);
          report.xrLabel12.Text = String.Format("Total: ${0}", sum);
  
          report.AddBoundLabel("cantidad", new Rectangle(100, 20, 50, 5));
          report.AddBoundLabel("codigo", new Rectangle(150, 20, 100, 5));
          report.AddBoundLabel("descripcion", new Rectangle(250, 20, 200, 5));
          report.AddBoundLabel("precioUnitario", new Rectangle(500, 20, 50, 5));
          report.AddBoundLabel("precioTotal", new Rectangle(600, 20, 50, 5));
  
          ReportPrintTool printTool = new ReportPrintTool(report);
          printTool.ShowPreviewDialog();
  
      }
  </code></pre>