ActiveReport3子报告迭代

时间:2015-02-17 08:22:29

标签: activereports

我该怎么办?     步行周期的细节子报告(2个文本框),使第二个文本框严格在第一个但右边的同盟。     或者如何表示第二个文本框位于第一个文本框右下方(右边是右边)

example 

good name

               price 
another good

name

               price



    `public void Goods_BeforePrint()
{
     Section sec;
     sec = rpt.Sections["Goods"];
    for(int y= 0; y <= sec.Controls.Count - 1;y++)
    {
    if( y%2> 0)
    {
        sec.Controls[y].Height +=   sec.Controls[y-1].Height;
        ((TextBox)sec.Controls[y]).Text   = System.Convert.ToString(sec.Controls.Count);

    }
}`

现在我每行都有0.25的高度值。 问题不是在同一行,而是在行的大小,因为这里没有我期望的迭代,每行都是相同的大小=第一行的大小。

1 个答案:

答案 0 :(得分:0)

你的问题不是很清楚;但是根据预期的输出,我建议您处理SubReport详细信息部分的Format事件,并访问要更改其对齐的控件。因此,如果您希望它显示左对齐两次并且右对齐每第三行,则以下代码应该起作用:

int counter = 0;
private void detail_Format(object sender, EventArgs e)
{
    counter++;
    if (counter % 3 == 0)
    {
        this.txtCountry1.Alignment = GrapeCity.ActiveReports.Document.Section.TextAlignment.Right;
    }
    else
    {
        this.txtCountry1.Alignment = GrapeCity.ActiveReports.Document.Section.TextAlignment.Left;
    }
}

这是我机器的截图,显示了一个类似实现的基本示例。 enter image description here