Genexus 17U10智能设备端能否创建带可折叠元素的分组网格?
Genexus 17U10智能设备端可折叠分组网格实现方案
方案1:用Grouped Grid组件(官方推荐)
Genexus 17U10的智能设备UI原生支持Grouped Grid,完美匹配你的分组+折叠需求:
- 新建智能设备对象,添加
Grouped Grid组件 - 将分组字段绑定到客户标识/名称字段,子项字段关联对应对象的数据(比如通过关联查询拉取客户及其下属对象的数据集)
- 在组件属性里开启
AllowCollapse,就能实现单个客户分组的折叠/展开 - 这个组件自动适配智能设备端的交互逻辑,无需自行编写大量控制代码
方案2:容器+网格手动实现自定义折叠
如果Grouped Grid不符合定制需求,可以用嵌套容器的方式手动搭建:
- 添加一个循环容器,绑定客户列表数据源
- 容器内顶部放置按钮/标签作为客户标题,给按钮添加点击事件,用来切换下方网格的显示状态
- 标题下方添加Grid组件,绑定当前客户的对象列表,初始设置
Visible = False,通过标题点击事件切换该属性 - 可搭配
Icon组件给标题添加折叠状态图标,点击时切换图标样式(比如箭头向下/向上),让交互更直观
方案3:Section组件实现纯分组(无折叠备选)
如果暂时不需要折叠功能,只想快速实现分组展示,用Section组件更简单:
- 在智能设备对象中逐个添加
Section,每个Section对应一个客户 - 设置
Section的标题为客户名称,内部放置Grid/List组件展示该客户的对象列表 - 这种方式代码量少,适合快速搭建基础分组界面
关于你之前的尝试失败原因
标准Grid组件不支持嵌套复杂组件,所以你尝试将组件放入网格会失败,上面的几种方案都是官方认可的替代路径,适配智能设备端的渲染机制。
内容的提问来源于stack exchange,提问作者Nicola
相关产品推荐
相关产品推荐

