在高级DataGrid中拖放

时间:2010-01-18 14:52:08

标签: flex flex3

我有一个Advanced DataGrid用于显示数据库中的行数,一行严格不允许拖动选项。有可能吗?请分享一个示例。

1 个答案:

答案 0 :(得分:0)

当然这是可能的。将dragEnter Handler添加到您的数据网格:

<mx:AdvancedDataGrid id="adg" dragEnabled="true" dragEnter="adg_dragEnterHandler(event)" />

使用以下代码:

protected var _draggedItem:Object;

            protected function adg_dragEnterHandler(event:DragEvent):void
            {
                event.preventDefault();
                event.currentTarget.hideDropFeedback(event);

                var items:Array = ds.dataForFormat("items") as Array;
                if (items != null && items.length > 0 && (items[0] is CategoryVO)) {
                    _draggedItem = Object(items[0]);
                }

                // Prevent item from being dragged
                if (_draggedItem.property == true) {
                    DragManager.showFeedback(DragManager.NONE);
                    return;
                }

                DragManager.acceptDragDrop(UIComponent(event.currentTarget));

            }

_draggedItem.property == true是检查,如果无法拖动项目。