前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >sap.ui.comp.smarttable.SmartTable 一些属性的用法阐述

sap.ui.comp.smarttable.SmartTable 一些属性的用法阐述

作者头像
Jerry Wang
发布2023-03-17 10:12:54
8100
发布2023-03-17 10:12:54
举报

SmartTable 控件根据 OData 元数据和指定的配置创建一个表格控件。

必须指定 entitySet 属性才能使用该控件。 此属性用于从 OData 元数据中获取字段,从中生成列; 它还可以用于获取实际的表数据。

基于 tableType 属性,此控件将呈现标准表、分析表、树或响应表。

这个属性如下图所示:

如果 tableType=“ResponsiveTable”,将应用以下更改:

  • SmartTable 的 demandPopin 属性设置为 true。
  • 内表的 fixedLayout 属性设置为 Strict。
  • 内表的 contextualWidth 属性设置为 Auto。
  • 启用列大小调整功能,并禁用所有列(包括自定义列)的列标题换行。

这个属性的值是一个枚举类型:sap.ui.comp.smarttable.TableType

如果在视图中显式向 SmartTable 的内容添加表格,则此属性无效。 这不是动态属性,一旦控件初始化就无法更改。

一些属性值:

  • editable:该属性可用于指定 SmartTable 控件创建的控件是否可编辑。

设置成 true 之后的效果如下,每个 cell 可以编辑:

  • enableAutoColumnWidth:设置为 true 时,根据元数据信息为所有支持的表类型启用启发式列宽计算, 即 heuristic column width calculation.

列宽计算考虑了 OData 类型、列标签、文本排列、可能的单元格模板、附加字段和许多其他元数据参数。 为 Edm.String 类型提供更精确的 MaxLength 值或为数字 OData 类型提供精度值可以帮助该算法产生更好的结果。

计算出的列宽最小为 3rem,最大为 20rem。 为了避免对特定列进行启发式列宽计算,可以使用 CssDefaults 注释。

如果 tableType=“ResponsiveTable”,将应用以下更改:

  • SmartTable 的 demandPopin 属性设置为 true。
  • 内表的 fixedLayout 属性设置为 Strict。
  • 内表的 contextualWidth 属性设置为 Auto。
  • 启用列大小调整功能,并禁用所有列(包括自定义列)的列标题换行。

这些属性不得由应用程序管理。

默认情况下,此功能对自定义列没有影响。

要为自定义列启用启发式列宽计算,必须在 p13nData 自定义数据中指定 autoColumnWidth 属性。

  • 注意:自定义列的自动列宽计算仅在未设置自定义列的宽度属性时起作用。
  • 注意:自定义列可能具有可能会影响列宽计算结果的意外单元格模板,例如,只能包含三位数字的 Edm.Byte 字段可能会可视化为需要更多空间的 sap.m.RatingIndicator。
  • 注意:在 p13nData 自定义数据中定义 leadingProperty 和唯一的 columnKey 是所有其他 p13nData 属性(包括 autoColumnWidth 属性)的先决条件。
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2023-03-16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档