列表项的 setSelected 方法不会触发选择事件 - SAPUI5

Gan*_*ana 0 sapui5

我试图在主视图中选择列表的第一项。我正在从 Detail 控制器执行此操作。我可以选择列表中的项目,但它不会触发事件以在“详细信息”视图中显示详细信息。

主视图.xml

<List id="idMasterList" mode="{device>/listMode}" select="onSelect" 
                noDataText="{i18nMaster>masterListNoDataText}"  
                items="{  path: '/', sorter: {path: 'name'} }" icon="sap-icon://refresh">
            <items>
              <StandardListItem id="idStandardItem" type="{device>/listItemType}"  
                tooltip="{name}" 
                title="{name}"
                info="{total}/{due}" 
                /> 
            </items>                            
        </List>
Run Code Online (Sandbox Code Playgroud)

详细信息.controller.js

sap.ui.getCore().byId("__xmlview2--idMasterList").getItems()[0].setSelected(true);
Run Code Online (Sandbox Code Playgroud)

我找不到任何可以直接解决这个问题的信息(或)我没有得到它!!!

任何帮助表示赞赏。

谢谢

sch*_*del 5

您可以setSelectedItem()在 List 而不是setSelected()ListItem上调用该方法。该setSelectedItem()方法确实有第三个未公开的参数:bFireEvent。

var list = this.byId("idMasterList");
list.setSelectedItem(list.getItems()[0], true /*selected*/, true /*fire event*/);
Run Code Online (Sandbox Code Playgroud)

参见JSBin 示例

但请注意,这是一个未记录的参数。它可能会在未来版本中更改,恕不另行通知(但到目前为止还没有)。