SmartTable 控件根据 OData 元数据和指定的配置创建一个表格控件。
必须指定 entitySet 属性才能使用该控件。 此属性用于从 OData 元数据中获取字段,从中生成列; 它还可以用于获取实际的表数据。
基于 tableType
属性,此控件将呈现标准表、分析表、树或响应表。
这个属性如下图所示:
如果 tableType=“ResponsiveTable”,将应用以下更改:
这个属性的值是一个枚举类型:sap.ui.comp.smarttable.TableType
如果在视图中显式
向 SmartTable 的内容添加表格,则此属性无效。
这不是动态属性,一旦控件初始化就无法更改。
一些属性值:
设置成 true 之后的效果如下,每个 cell 可以编辑:
启发式列宽计算
, 即 heuristic column width calculation
.列宽计算考虑了 OData 类型、列标签、文本排列、可能的单元格模板、附加字段和许多其他元数据参数。 为 Edm.String 类型提供更精确的 MaxLength 值或为数字 OData 类型提供精度值可以帮助该算法产生更好的结果。
计算出的列宽最小为 3rem,最大为 20rem。 为了避免对特定列进行启发式列宽计算,可以使用 CssDefaults 注释。
如果 tableType=“ResponsiveTable”,将应用以下更改:
这些属性不得由应用程序管理。
默认情况下,此功能对自定义列没有影响。
要为自定义列启用启发式列宽计算,必须在 p13nData 自定义数据中指定 autoColumnWidth 属性。