Sitecore SPEAK UI设置ListControl的选定行

Sitecore SPEAK UI设置ListControl的选定行,sitecore,sitecore-speak-ui,Sitecore,Sitecore Speak Ui,我有一个SPEAK UI对话框,其中一个ListControl绑定到一个。这将起作用,并且ListControl已正确填充。我的JSON数据如下所示: [ { 项目ID:{BA26159A-194D-4A3C-9D1A-DA9472F11BE0}, 所选:真 }, { 项目ID:{E651D0CD-0E7E-4903-8E26-0D1D5A168E69}, 所选:false }, { 项目ID:{E651D0CD-0E7E-4903-8E26-0D1D5A168E70}, 所选:false }

我有一个SPEAK UI对话框,其中一个ListControl绑定到一个。这将起作用,并且ListControl已正确填充。我的JSON数据如下所示:

[ { 项目ID:{BA26159A-194D-4A3C-9D1A-DA9472F11BE0}, 所选:真 }, { 项目ID:{E651D0CD-0E7E-4903-8E26-0D1D5A168E69}, 所选:false }, { 项目ID:{E651D0CD-0E7E-4903-8E26-0D1D5A168E70}, 所选:false } ]
是否有方法确保ListControl的相关行被选中:加载对话框时为true?

可以如下设置ListControl的选定项ID:this.MediaResultsListControl.viewModel.set{selectedItemId:ITEMID}

Sitecore.Speak.app,而不是在控制台中进行dubuging时使用此选项

如果调用this.MediaResultsListControl.viewModel.selectedItemId,可以看到所选项目已通过上述方法设置

是否可以使用此方法从页面代码手动设置ListControls所选项目id

查看列表控件的JS。它在单击一行时调用它。不知道您是否可以替换它以触发所选行

selectRow:功能行,rowModel{ 此.$el.find.active.removeClassactive; row.addClassactive; this.model.setselectedItem,rowModel; this.model.setselectedItemId,rowModel.getitemId; },
好的,谢谢,我来试一试。我目前有一些设置selectedItemId的代码,如app.JsonList.set'selectedItemId',这些数据似乎会保留控件上的值,但不会突出显示行。是的,我自己也遇到了同样的问题。想知道这是不是一个SPEAK bug,或者在控件的生命周期中可能已经太晚了?在回答中添加了注释我不明白该把代码放在哪里?在我的JsonDatasource.js中,或者在我的对话框的页面代码引用的脚本中?我会将它放在页面代码中,以便在从JSON数据源检索数据之后。调用代码以设置列表控件的选定项索引