javascript - SAPUI5 表将操作绑定(bind)到图标模板

标签 javascript events icons sapui5

我正在使用 UI5 表。 我正在读取我的 oData 服务并将元素绑定(bind)到列:

oTable.addColumn(new sap.ui.table.Column({
    label : new sap.ui.commons.Label({
        text : ""
    }),
    template : new sap.ui.core.Icon({
        src : "{Visible}",
    }),
    width : "55px",
    hAlign : "Center"
}));

{Visible} 包含 sap 图标“展开”..它正确显示在表格中。 如何将事件绑定(bind)到该图标?

我之前通过单独定义了一个图标

var icon = new sap.ui.core.Icon({
            src : sURI,
        });

icon.attachPress(function(oEvent) {
  var selectedRow = this.getBindingContext().getProperty('myID');
  console.log('Row clicked:' + selectedRow);
});

但是像这样我无法将我的 odata 元素 {visible} 添加到列中,因为必须在 addColumn 方法中读取它,否则绑定(bind)不起作用。

有人帮忙吗?

最佳答案

只需添加新闻事件。

var pressHandler = function(oEvent) {
    var selectedRow = this.getBindingContext().getProperty('myID');
    console.log('Row clicked:' + selectedRow);
});

oTable.addColumn(new sap.ui.table.Column({
    label : new sap.ui.commons.Label({
        text : ""
    }),
    template : new sap.ui.core.Icon({
        src : "{Visible}",
        press: pressHandler
    }),
    width : "55px",
    hAlign : "Center"
}));

关于javascript - SAPUI5 表将操作绑定(bind)到图标模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25482488/

相关文章:

php - 将下拉值传递给 session 而不刷新页面

javascript - Rails 中的日期选择器适用于 Chrome,但不适用于 Firefox

javascript - 如何渲染数组的单个元素?

r - observeEvent 中 Shiny 的 react 数据集

Jquery,为每个ajax调用独立注册一个函数

icons - iTunes Connect 中 512x512 应用程序图标的问题

javascript - 关于简单键值存储的字典与对象的 Python 最佳实践是什么?

C#知道设置了多少个EventHandlers吗?

iphone - 如何以编程方式更改 iPhone 应用程序的默认图标?

java - 使用 JLabel 设置框架背景图像的正确方法是什么?