为了更好地概览和使用可用的屏幕空间,我希望两个网格彼此相邻,但只有一个工具栏带有按钮。两个网格绑定到不同的ChainedStores,但链接存储的底层源存储是相同的。 ChainedStores有过滤器来创建底层商店中记录的分区 - 左边一半,另一半右边。
单击工具栏中的按钮应对其中任一网格中的选定记录执行操作。
有没有办法告诉selectionModel我想要只选择一个记录,在右侧或左侧网格中,但不是每个都有一个?
答案 0 :(得分:2)
ExtJS不支持两个不同网格的相同选择模型。您必须通过代码手动处理它。
你可以在每个网格上编写select
个事件监听器,在那个事件上你可以取消选择另一个网格的记录。
代表grid1
,
listeners :{
select : function(sel, record, index, eOpts){
sel.view.up('panel[name=main]').down('grid[name=grid2]').getSelectionModel().deselectAll();
}
}
代表grid2
,
listeners :{
select : function(sel, record, index, eOpts){
sel.view.up('panel[name=main]').down('grid[name=grid1]').getSelectionModel().deselectAll();
}
}
请参阅fiddle