GridFieldControls(Sm绑定控件集)是被设计用来批量地生成与主表字段绑定的控件的。与之对应的数据规范也会一同被设置好。就是这么简单、高效。
以下是CreateControlType属性分别设置为Control和RecordGrid而生成的结果。
我们使用过程中只需要绑定表,设置ColLayoutDirection属性和CreateControlType属性即可。
我们可以通过“绑定表(DataRuleGrid)”属性来绑定一个表。也可以用“绑定表字符版(BindingDataRuleGrid)”属性来绑定其他窗口中的表。
然后控件里面具体显示哪些字段,是我们需要在主表的表属性设置窗口中设置的。列数据规范里面“显示”列选择好的就会显示出来。“控件类型”可以决定我们最终显示哪种控件。数据规范又决定了控件的行为。
常用属性
属性名称 | 说明 | |
BoxControls | BoxControlCollection类型,返回当前控件里包含的所有BoxBase控件集合。我们可以参考“如何引用子窗口中的控件”来学习如何使用此属性。 | |
ColLayoutDirection |
LayoutDirectionEnum枚举类型,返回或设置列的排列方向,到底是先从左到右再从上到下,还是先从上到下再从左到右。
| |
CreateControlType |
CreateControlTypeEnum枚举类型,设置或返回生成控件的类型。
| |
BindingDataRuleGrid | 字符串类型,可以用编辑器的形式选择绑定其他窗口中的表。 | |
DataRuleGrid | IDataRuleGrid类型,返回或设置当前控件所绑定的主表。 |
方法
方法名称 | 说明 |
RefreshControls | 根据已经绑定的主表及主表的列显示属性设置来重新刷新控件或表格。如果我们有修改过控件的ColLayoutDirection、CreateControlType、DataRuleGrid属性中的任意一个,都可以主动执行RefreshControls方法来刷新控件显示。 |
注意:平台会在窗体的AfterLoad事件里面自动地执行一次RefreshControls方法,所以我们平时使用时,只需要设置属性即可。但是如果在其他地方自己动态地设置属性的话,想让控件显示创建的控件的话必须主动地执行一下RefreshControls方法。