ActiveReport资料

1. ActiveReports for .NET 2 Online | ActiveReports for .NET 3 Online

2.GroupHeader块

①GroupHeader块为每个数据组打印一次。数据组是由DataField属性中指定的字段定义的。一个GroupHeader块需要一个匹配的GroupFooter块。

②由于在分组之前,ActiveReports是不会排序的,所以你的数据源需要为在GroupHeader块中指定的所有数据字段进行排序。例如,对于需要根据国家和城市这两个字段创建两个组的报表,你必须用这两个数据字段的指定顺序进行排序。如果你的数据没有排序,那么相同组的数据就会在报表的不同的位置多次出现。

2-1.DataField属性

①对数据源进行分组的字段的名字。

②ActiveReports会检查指定字段的值的任何改变。当值发生改变时就会开始一个新的组。在新组开始前当前组就结束了。指定的字段可以来自数据源,也可以是一个在ActiveReport的DataInitialize 事件中追加到字段集合(Fields collection)中的未绑定的字段。

2-2.CanShrink属性

①指示GroupHeader块的高度是否根据它的控件的实际高度和进行调整。True:进行收缩(shrink)以适应它的控件。

2-3.CanGrow属性

①指示当块的控件高度超过它的原始高度时,块的高度是否增长。True:进行扩展(grow)以适应它的控件。False:控件会被裁剪来适应块的高度。

2-4.RepeatStyle属性

①指示在明细块或相关Footer被打印的每个列或页(every column or page)上是否打印GroupHeader块。

②RepeatStyle枚举

②-1 None:当相关的明细块打印在一个新页上时,GroupHeader块不会被重复。

②-2 OnPage:在一张新页上重复GroupHeader块

②-3 OnColumn:在一个新列上重复GroupHeader块(新列的示例不太清楚)

②-4 All:在一张新页或新列上重复GroupHeader块

②-5 OnPageIncludeNoDetail:在一张包含了相关明细块或GroupFooter块的新页上重复GroupHeader块。这个属性避免GroupFooter块称为孤立的。

2-5.NewPage属性

①决定在一个块之前和/或之后插入一张新页。

②NewPage枚举

②-1 None:块会一直印刷在同一张页上,直到用完这页上的空间。

②-2 Before:在每个块实例之前,报表跳到(break to)一张新页。

②-3 After:在每个块实例之后,报表跳到(break to)一张新页。

②-4 BeforeAfter:在每个块实例之前和之后,报表都会跳到(break to)一张新页。

2-6.GroupKeepTogether属性

①指示块和它的Footer以及相关的明细是否作为一个块在同一页上打印。

②GroupKeepTogether枚举

②-1GroupKeepTogether.None:在Groupheader之后,一页可以被立即分页(broken)。

②-2GroupKeepTogether.FirstDetail:在同一页上至少和第一条明细块一起打印。

②-3GroupKeepTogether.All:GroupHeader块、明细块、GroupFooter块在同一页上一起打印。

2-7.KeepTogether属性

①指示块是否在一页上打印

②如果这个属性设成了True,ActiveReports将会努力在当前页上打印这个块。如果内容不能放到(fit)当前页,并且当前页不是一张新页,这个块会被移到下一页。

如果这个块不能放到(fit)下一页,它将被移回到原来的位置,并且内容会被分割到多页上。

2-8.UnderlayNext属性

①指示这个块是否打印在下个块的下面(beneath) 。(下一个块会重复打印在这个块上,会发生重叠)

②下一个块的背景色需要设为Transparent,否则这个块就被隐藏了而看不到。

3.Detail块

①Detail块是报表中的主要块。对于数据源中的每条数据,都会打印一次Detail块。

3-1.ColumnCount属性

①指示报表中新页的列的数量

②这个属性可以用来打印标签(Labels)或电话薄风格的列表。每列的宽度等于报表的PrintWidth除以列的数量。

3-2.ColumnDirection属性

①决定在多列报表中如何打印明细块。(Detail Section)。

②ColumnDirection枚举 (指示多列报表的列方向)

②-1 DownAcross 在转移到列的右侧列之前,在这个列的下边打印明细。

②-2 DownAcross 在一个行的下边开始新的一行之前,在所有列的下边打印明细行。

3-3.ColumnSpacing属性

①指示列之前的空白大小。

4.TextBox控件

4-1.DataField属性

①将来自于数据源的字段名称绑定到这个控件上。

②数据首先保存到DataValue属性中,然后通过OutputFormat的处理后,再设到控件的Text中。

③DataField属性可以使用以等于号开始的脚本表达式来执行计算。比如"=UnitPrice * Qty" 或者 "=CompanyName.Trim()"。 UnitPrice, Qty 和CompanyName成员必须来自报表的字段集合(Fields collection)。

④当使用XML时,DataField必须被设为有效的XPath表达式。

4-2.OutputFormat属性

①在将Value值放到Text属性之前,使用mask string来格式化Value。

② formatting mask只能用来格式化数字和日期。不支持格式化数字字母字符串。

③在控件的块的Format事件中设置OutputFormat将不会抓取到第一条记录。发生这种行为的原因是数据是在Format事件发生之前就应用到了控件上。如果你在Format 事件中改变了OutputFormat,设置Control.Value=Control.Value,那么OutputFormat被再次应用(reapplied)。

④TextBox控件的OutputFormat属性包含由分号分割的四块内容。每个块包含对不同数字类型的格式定义。

・第一块提供正数的格式

・第二块提供负数的格式

・第三块提供0的格式

・第四块提供Null和System.DBNull的格式

4-3.WordWrap属性

①指示一个多行文本框在必要时,自动Wrap单词到下一行的开头。(换行)

4-4.SummaryGroup属性

①在进行小计时,指定group header块的名字来重置总和。

②比如,为Order group header设置计算Price的总合,将会为每一个Order group重置总和到0。

③这个属性只有在SummaryType被设置为SummaryType.SubTotal时被使用。

4-5.SummaryFunc属性

①设置求和函数类型来处理DataField的值。

②只有SummaryType被设置为SubTotal 或 GrandTotal时,SummaryFunc才会起作用。

③当求和函数被使用到控件上时,CanGrow和CanShrink属性将不会起作用。因为求和是在控件的高度已经被决定及最终确定后计算的。

4-6.SummaryRunning属性

①决定是否对每一层次的data field总和做计算。

②将属性设为Group 或 All将会使报表在组和报表层次(group or report level)打印运行的总和。

When used with Groups this property should only be set when SummaryType is GrandTotal or PageTotal, otherwise it should be set to None.

4-7.SummaryType属性

①-1 Subtotal:组层次(group level),为每组重置

①-2 Grand total:报表层次(report level),所有记录被处理而不被重置

①-3 Page total:页层次(page level),为每页重置

①-4 page count:所有打印的页数

②如果一个像求和字段被放置在求和层次的头部(比如,page header上的page total,report header上的grand total),这个包含的块和下一个块将不会打印直到总和被计算了。在字段中使用求和函数后,对于这个字段的CanGrow和CanShrink属性将会失效。

上一篇:XMLHttpRequest的POST中文表单问题解决方案


下一篇:c#模拟键盘输入