2009-08-14 61 views
0

好的我有一个AdvancedDataGrid。我给它的数据是XML,看起来像这样:Flex:拖动后更新数据库?

<stat associate="Sam Smith" date="07/08/09" customer="James Frank"/> 
<stat associate="John Doe" date="09-07-08" customer ="Amanda Jones"/> 
<stat associate="John Doe" date="09-07-09" customer ="Henry Scott"/> 

但我通过联营所以它结束了看起来像这样的树分组:

Sam Smith 
07/08/09 James Frank 

John Doe 
09-07-08 Amanda Jones 
09-07-09 Henry Scott 

我试图让它如此您可以通过将客户从一个拖动到另一个将客户重新分配给不同的员工。我设置了dragMoveEnabled,所以我实际上可以点击并将其移动到另一个关联,并且它在视觉上完美无缺。但是我需要检测谁收到了什么,所以我可以用更改来更新数据库。

有谁知道该怎么做?

谢谢!

UPDATE: 我试图寻找在平面数据之后,像这样:

public function onDragComplete(event:Event):void 
{ 
    var adg:AdvancedDataGrid = AdvancedDataGrid(event.currentTarget); 
    var hcv:HierarchicalCollectionView = HierarchicalCollectionView(adg.dataProvider); 
    var gc:GroupingCollection = GroupingCollection(hcv.source); 
    trace(gc.source); 
} 

而且它并没有改变,也许寿非平面数据的变化,但我不知道如何查看非平坦数据?

回答

0

我相信对datagrid的更改应该改变底层的dataProvider。您可以侦听对dataProvider的更改(例如,ArrayCollections的PropertyChanged事件),然后向服务器发送更改。

+0

感谢您的评论,我之后查看了平面数据,并没有改变。我在我的问题中添加了另一个代码示例以显示我如何检查它。也许如果我可以查看非平面数据...不知道如何tho? – 2009-08-14 16:38:43

+0

嗯......你可能需要迭代节点并以这种方式显示数据。否则,它可能只是列出数据。 – CookieOfFortune 2009-08-14 17:24:34