OpenUI5 从树中拖放

OpenUI5 Drag & Drop from and into a Tree

编辑:
这个问题已经过时了。

如果有人用谷歌搜索类似的功能,请查看 this example with sap.m.Table. DnD is now supported in ListBase as of v1.54. Since sap.m.TreeListBase 扩展(如 sap.m.Table 所做的那样),我想在那里应该可以在多个树之间执行 DnD还有。

(正如 boghyon 评论的那样)


我正在尝试将项目从 OpenUI5-Tree 拖放到另一棵树中。
用例:
用户应该能够选择一个 TreeItem 并将其放入屏幕中间(放入另一棵树)。在该树中,用户应该能够通过拖放对选择的项目进行排序。

我的问题是我只能拖动东西,但不能将它们放到树中。我使树可放置,但它不起作用。

这里有一个小例子:
JsBin Example
我正在尝试将项目拖放到右侧 Table。

我正在使用 Google Chrome 版本 41。不幸的是,我无法使用 Firefox 拖动项目。不知道为什么...

大约3个小时后,我得到了解决方案。
这里有一个示例:
JS-Bin Solution

我不得不使用 jquery 这样的事件:

$("#" + sap.ui.getCore().byId("middleTree").getId()).on("drop", function(event) {
            event.preventDefault();  
            event.stopPropagation();
            alert("Dropped!");
    });

$("#" + sap.ui.getCore().byId("middleTree").getId()).on("dragover", function(event) {
            event.preventDefault();  
            event.stopPropagation();
            $(this).addClass('dragging');
    });

$("#" + sap.ui.getCore().byId("middleTree").getId()).on("dragleave", function(event) {
            event.preventDefault();  
            event.stopPropagation();
            $(this).removeClass('dragging');
    });

编辑:
虽然最好使用 SAP/OPEN UI5s 方法 attachBrowserEvent i can't actually use it with a Tree, because it doesn't extend Control sap.ui.core.Control.