你可以设置的显示将行分组变成 OUTLOOK样式。对于大量的数据来说,这样会以用户需要的顺序显示数据。用户可以选择要进行的排序(以列为依据),然后控件会以此为依据将行组织起来,分级地显示数据。既可以通过双击列首的方式,也可以通过点击和拖拽此列进入页面头部分组栏的方式 选中要进行分组的列。

Spread for Windows Forms快速入门(12)---数据分组(Outlook风格)_ 葡萄城

允许用户使用行分组

默认情况下,不允许用户在表单中进行行分组。 你可以开启这项特性,以便对整个表单的行进行分组。除了允许进行分组之外,你还需要允许移动列,因为用户通过使用点击和向分组栏中拖拽列首的方式进行分组,这就相当于移动列这一操作。与此同时,分组栏必须是可见的,列首(至少有一行) 是可见的。

使用表单的AllowGroup属性开启分组。 使用表单的Visible属性(GroupBarInfo类中)显示分组栏(用户可以将列首拖拽进入表单顶部的区域) 请记住设置表单的AllowColumnMove属性为真,以便于用户点击,拖拽列首。 除非你使用默认值,设置表单的ColumnHeaderVisible属性为true确保列首可以显示。

你可以开启或关闭行首,这些操作不影响分组的显示。

分组不支持AllowDragDrop属性。

你可以设置最终用户可以设置的分组层级的最大数目,这样可以限制可被拖入分组栏中的列首的数目。

下面的代码示例允许分组。

FpSpread1.AllowColumnMove = true;

FpSpread1.ActiveSheet.GroupBarInfo.Visible = true;

FpSpread1.ActiveSheet.AllowGroup = true;

使用分组

通过向分组区中拖拽更多的列首,你可以允许用户分组并且根据不同的分组级别将数据排序。下面的图表显示了这样一个过程,该过程中使用了两个不同的级别进行分组。

通过点击展开(+)或者折叠(-)指示器,你也可以对分组进行展开和折叠。

Spread for Windows Forms快速入门(12)---数据分组(Outlook风格)_Spread_02 Spread for Windows Forms快速入门(12)---数据分组(Outlook风格)_Spread_03

在二次分组之前,将列首拖入分组栏中。

在二次分组之后,一个层级列表的第二级就可见了。

当不止一级别被选择时,较高的一级就会被父一级的分组调用,而较低的一级就会被子一级的分组调用。在上面的图片中显示了两级分组,Employee ID就是父一级的分组而First Name就是子一级的分组。

设置已经分组的行的外观

开发人员可以自定义分组的行头和列首的外观;可以设置当表单进行分组的时候,所有的项目默认展开或折叠显示;当进行分组时,可以设置颜色,也可以设置分级的名字与数据的格式;可以隐藏或显示表单顶部的分组栏。

分组的API成员

相关描述

IGroupSupport接口

支持分组的接口

GroupDataModel类

底层模型中将数据分组的类

Group类

支持分组的底层模型里面的类

Grouped和Grouping事件

在FpSpread类中的事件

GroupInfo

能够显示分组信息的类

GroupInfoCollection

分组信息集合

你也可以设置GroupInfo中的属性。 通过向此外观属性列表中添加样式,可以达到设置分组行的外观的目的。GroupInfoCollection包含了一组GroupInfo 对象。想要为特定的表单指定GroupInfo中的外观设置,你可以在表单中设置GroupInfos属性。 对分列操作进行外观设置包括如下方面:

1. 背景色

2. 边界

3. 字体

4. 前景色(文本颜色)

5. 水平对齐

6. 缩进,缩排

7. 缩进颜色

8. 垂直对齐

9. 当分组操作开始进行时,只用列和表单的外观设置依旧保持原样因为当分组操作进行时,行和单元格就会被移动,任何样式和合并设置就会被忽略。你可以使用IsGroup方法,用以判定一个要求 行是否是一个数据行或者一个分组的行首。

自定义分组栏

你可以自定义分组栏的外观,它位于分组显示的顶部。

你可以隐藏或显示表单顶部的分组栏,表单中(GroupBarInfo对象)的属性包括:

GroupBarInfo属性

描述

BackColor

设置分组栏的背景色

Height

设置分组栏的高度

Visible

对是否显示分组栏进行决策。

GroupVerticalIndent

在分组栏中设置分组名称之间的垂直距离(此项仅当多个组名时可用)。

你可以设置表单中允许进行分组的最大层次级别。SheetView对象中的属性是:

属性

描述

GroupMaximumLevel

设置允许用户进行分组的级别的 最大数目。

 

 

 

附:Spread for Windows Forms快速入门系列文章

Spread for Windows Forms快速入门(1)---开始使用Spread

Spread for Windows Forms快速入门(2)---设置Spread表单

Spread for Windows Forms快速入门(3)---行列操作

Spread for Windows Forms快速入门(4)---常用的单元格类型(上)

Spread for Windows Forms快速入门(5)---常用的单元格类型(下)

Spread for Windows Forms快速入门(6)---定义单元格的外观

Spread for Windows Forms快速入门(7)---单元格的交互操作

Spread for Windows Forms快速入门(8)---单元格中用户动作出发的事件

Spread for Windows Forms快速入门(9)---使用公式

Spread for Windows Forms快速入门(10)---绑定到数据库

Spread for Windows Forms快速入门(11)---数据筛选