【问题标题】:Adding drag & drop to a datagrid column in flex在 flex 中添加拖放到数据网格列
【发布时间】:2009-11-03 22:29:18
【问题描述】:

我有两个数据网格组件,我想将一列从一个组件拖到另一个组件。我一直在尝试几种方法,但我无法完成。 有人可以帮我解决这个问题吗?

【问题讨论】:

  • 此页面提供代码和启用拖放的数据网格的工作 SWF blog.flexexamples.com/2007/09/19/… 但这是用于拖动行(数据) - 我认为您不能从一个数据网格中拖动一列到另一个。
  • 您可以拖动数据网格中的列 - 将其位置从第一列移动到第二列,依此类推。但是您正试图在不同的数据网格之间拖动列,对吧?
  • 我已经看过那个网站了。它解释了如何拖放行。我想在不同的数据网格之间拖放列。

标签: apache-flex actionscript-3


【解决方案1】:

您要做的是禁用第一个数据网格上的列并在第二个数据网格上启用它。必须监听 DRAG_START 事件,找到目标列是哪个字段,拖动成功时将其隐藏在第一个数据网格上。然后你对第二个数据网格使用对称方法......

我想如果你想让它在视觉上连贯,你将不得不创建一个自定义的拖动代理视觉组件。

祝你好运=)

【讨论】:

  • 我正在尝试做类似的事情。我已将此属性添加到 advancedDataGrid 组件 (dragStart="dragStart(event)" ) 并创建了此函数: public function dragStart(event:MouseEvent):{ var column:AdvancedDataGridColumn=event.target.parent.data; var dragSource:DragSource = new DragSource(); dragSource.addData(column,'advancedDataGridColumn'); DragManager.doDrag(column, dragSource, event);我的第一个问题是函数没有被调用,另一个问题是函数的最后一行出现错误。无法将 AdvancedDataGridColumn 转换为 IUIComponent
猜你喜欢
  • 2011-11-23
  • 1970-01-01
  • 2013-07-15
  • 1970-01-01
  • 2011-02-24
  • 1970-01-01
  • 2011-04-17
  • 2017-06-01
  • 2011-07-03
相关资源
最近更新 更多