Extjs:如何防止checkboxModel在pagingtoolbar页面更改中取消选择行?
为什么在使用时取消选择页面上的所有选定行会发生更改?如何停止在页面更改时取消选择行 我看到有一个pruneRemoved可以用来防止节点的修剪,我将它设置为false,但是取消选择仍然被触发。不知道还有什么可以尝试的 我假设checkboxmodel在商店注册,或者pagingtoolbar在商店更改时收到通知…然后取消选择所有内容?为什么?我需要防止这种情况 编辑:Extjs:如何防止checkboxModel在pagingtoolbar页面更改中取消选择行?,extjs,extjs4,extjs4.1,Extjs,Extjs4,Extjs4.1,为什么在使用时取消选择页面上的所有选定行会发生更改?如何停止在页面更改时取消选择行 我看到有一个pruneRemoved可以用来防止节点的修剪,我将它设置为false,但是取消选择仍然被触发。不知道还有什么可以尝试的 我假设checkboxmodel在商店注册,或者pagingtoolbar在商店更改时收到通知…然后取消选择所有内容?为什么?我需要防止这种情况 编辑: 我不想被解雇的原因是;我在选择和取消选择上附加一个处理程序。选择将行添加到另一个网格,取消选择将删除行。因此,当用户选中某个复选
我不想被解雇的原因是;我在选择和取消选择上附加一个处理程序。选择将行添加到另一个网格,取消选择将删除行。因此,当用户选中某个复选框时,该行将被添加到另一个网格中,当用户取消选中该复选框时,该行将从该网格中删除。通过网格触发取消调用,当存储更改时,我会丢失另一个网格中保存的所有行。我不确定这是否是正确的方法,但它对我有效 我所做的是创建自己的Ext.grid.View。我扩展了ext.view.Table和onMaskBeforeShow方法。这是在网格选择模型上调用“全部取消选择”的方法。如你所见,我在这里发表了评论
Ext.define('Ext.grid.SteveView', {
extend: 'Ext.view.Table',
alias: 'widget.stevegridview',
onMaskBeforeShow: function(){
var me = this,
loadingHeight = me.loadingHeight;
//me.getSelectionModel().deselectAll();
me.all.clear();
if (loadingHeight && loadingHeight > me.getHeight()) {
me.hasLoadingHeight = true;
me.oldMinHeight = me.minHeight;
me.minHeight = loadingHeight;
me.updateLayout();
}
}
});
包括上面的脚本,然后在创建网格时,将viewType更改为stevegridview,或您决定命名的任何名称
{
xtype: 'grid',
viewType:'stevegridview',
store:'some store'
...
}
新的视图类型将在调用新的onMaskBeforeShow()时使用。您的用户如何知道他们选择了什么?您的意思是什么?网格的功能是取消选择存储刷新上的所有内容。我不希望取消选择被解雇。我在select和deselect上有一个处理程序,select将行添加到另一个网格,deselect将行删除。当网格触发时,取消选择所有我将丢失所有保存的行。