我不知道是否有人可以帮助我解决这个问题。我一直在尝试整个下午,但我无法做到正确。
我DragZone
为网格定义了一个...
Ext.define('Timetabling.view.ItStudentsDragZone', {
extend : 'Ext.dd.DragZone',
grid : null,
//Tell Ext how to recover from an invalid drop. XY from the dragged data
getRepairXY: function() {
return this.dragData.repairXY;
},
// To pair together a drag zone and drop zone
ddGroup : 'itstudents',
getDragData : function(e) {
var sourceEl = e.getTarget(),
view = this.grid.getView(),
rowEl = view.findItemByChild(sourceEl),
rec = rowEl && view.getRecord(rowEl);
if (sourceEl) {
d = sourceEl.cloneNode(true);
d.id = Ext.id();
return {
ddel: d,
sourceEl: sourceEl,
repairXY: Ext.fly(sourceEl).getXY(),
sourceStore: null,
draggedRecord: null
}
}
}
});
如果我从网格中只选择一项,它工作正常。但是,当我选择两个或更多项目,然后单击网格选择来拖动它时,在网格选择中单击的项目被选中,而另一个保持未选中状态,所以我可以再次拖动一个项目!
我想我必须将网格选择作为一个元素,但我不知道该怎么做......
如果有人对如何解决这个问题有一些想法,我将不胜感激。