SAPUI5按索引获取行的绑定上下文

时间:2019-06-26 07:26:16

标签: sapui5 sap

在我的应用程序中,我有一个sap.m.table。数据在JSON模型中并绑定到表。在我的函数中,我需要循环所有表行,并检查每个可见行中特定属性的值。我可以这样确定可见的行:

sap.ui.getCore().byId("myTableId").getAggregation("items")

但是,我无法使用getBindingContext之类的函数来确定行的属性值。

有没有提示该怎么做?

2 个答案:

答案 0 :(得分:0)

您不应直接使用sap.ui.getCore().byId(),而应使用this.getView().byId(),其中this是控制器本身。

无论如何,聚合的每个项目都有可用的绑定上下文。这取决于您用来绑定上下文的模型的名称。

在我的示例中,我正在访问表的第一项的绑定上下文对象,您可以这样做:

sap.ui.getCore().byId("__xmlview1--idPartnerList").getAggregation("items")[0].getBindingContext().getObject()

否则,如果您直接从控件访问视图(如应有的话),您可以这样做

this.getView().byId("idPartnerList").getAggregation("items")[0].getBindingContext().getObject()

答案 1 :(得分:0)

您应该能够使用以下代码获取表中每一行的 bindingContext

如果您的本地json模型中具有别名

sap.ui.getCore().byId("myTableId").getAggregation("items")[0].getBindingContext("<alias model name>").getObject();

否则,如果本地json模型中没有别名

sap.ui.getCore().byId("myTableId").getAggregation("items")[0].getBindingContext().getObject();

谢谢。