获取SAPUI5中的表行计数

use*_*284 5 sapui5

我有一个sap.ui.Table显示记录列表.我想得到数据中的记录数.

我已阅读SAP UI 5的帖子如何打印总表行,但它没有帮助我.

这是表的代码(已删除列的代码以使帖子更小):

  <table:Table id="PickRecs" visibleRowCount="10" selectionMode="MultiToggle" visible="true" rows="{/downRecs}" >
    <table:title>
        <txt:Text text="{
      path: '/downRecs',
      formatter: 'Formatter.totalFormatter'
    }">
        </txt:Text>
        <Label text="possible records to export"></Label>

    </table:title>
    <table:columns>
      .......
    </table:columns>
 </table:Table>
Run Code Online (Sandbox Code Playgroud)

这是formatter.js:

totalFormatter:function(results) {

    return results.length;
 }
Run Code Online (Sandbox Code Playgroud)

我想显示表中有多少行使用数组downRecs作为所有记录的来源.例如:要导出的3个可能记录.

此值可以根据屏幕上的某些输入字段进行更改,例如,他们可以选择查看产品的所有记录或仅查看特定客户的记录等.

如何获取此更新的记录数?该值显示在工具栏或表格的标题上.

abo*_*nik 8

绑定长度不是您可以绑定的属性.此外,在引用链接上写入的内容不正确,因为您无法为属性初始化ListBinding,ListBinding需要模板或工厂以及多个聚合基数.

要了解更新的记录计数,您应该附加到绑定的更改事件.

var oBinding = oTable.getBinding("rows"); 
oBinding.attachChange(function(sReason) {
    oYourTextField.setText(oBinding.getLength());
});
Run Code Online (Sandbox Code Playgroud)

请参阅jsbin并按列标题以获取过滤器菜单

http://jsbin.com/kohozenina/1/edit?html,output

我们知道这有点麻烦,我们正在开发一个ControlModel,您可以绑定触发更改事件的内容,如绑定长度或所选项的数量.