【问题标题】:sapui5 smarttable stick propertysapui5 smarttable棒属性
【发布时间】:2019-01-04 11:41:10
【问题描述】:

我需要为智能表提供固定的列标题。 在 xml 视图中,我在智能表中添加了<Table sticky="ColumnHeaders" />。 如果我从 Webide(sapui5 版本 1.60)测试应用程序,这是工作文件。 通过 chrome 开发者工具-> 检查元素,我看到额外的 css 类 sapMSticky 和 ​​sapMSticky4 被添加到表格元素中。

但是后端是基于 sapui5 version1.52(从 1.54 开始不支持粘性属性),我无法通过 chrome 开发者工具看到 css 类的属性。 我的问题是如何解决这个问题?

提前致谢,

【问题讨论】:

    标签: sapui5


    【解决方案1】:

    我认为没有办法解决它。不仅是缺少 CSS 的问题,而且我还考虑缺少实现。

    如果您想在本地使用 SAPUI5/OpenUI5 版本,解决您的问题的唯一方法是升级后端系统上的 SAPUI5/OpenUI5 版本。 否则,您可以使用两张表自己实现它,一张隐藏,一张不隐藏,但这确实很棘手,而且不是一个非常干净的解决方案。

    【讨论】:

      【解决方案2】:

      如果无法升级 UI5,则必须使用变通方法:

      要使标题元素始终位于顶部,您首先构造一个仅包含顶部元素但没有数据且属性 showNoData 设置为 false 的列表/表格。 然后,您构建另一个没有这些顶部元素的列表/表格,并将其作为 sap.m.ScrollContainer 的内容,并将高度属性设置为某个百分比值。 如果将没有数据的 List 和 ScrollContainer 都添加到主要内容中,则会得到类似于粘性标题的内容。

      【讨论】:

      • 谢谢 .. 我知道这种解决方法 .. 但是如何在 smarttable 中添加它 .. 我想保持排序/调整功能
      • 我可能无法正确理解您,但正如我所见,您可以通过 sap.ui.model.ListBinding 进行排序/过滤。获取包含数据的表,并从中获取聚合“项目”(binding=table.getBinding("items")。使用 binding.filter 和 binding.sort 函数。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-05-07
      • 2017-03-24
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多