我有一个网格,当我点击编辑按钮它进入编辑页面...但我需要网格中的值也传递给页面。
this.dispatchEvent(new DepManagementEvent(DepManagementEvent.EDIT_NAVI));
上面的代码登陆EDIT页面......我怎样才能移动这些值。
我的父母代码。
private function editForm():void {
var event:DepManagementEvent = new DepManagementEvent("Edit Page",true);
dispatchEvent(event);
}
以下编辑页面......
public function init(event:DepManagementEvent):void {
this.addEventListener(DepManagementEvent.EDIT_NAVI, onEditNavi);
}
public function onEditNavi(event:DepManagementEvent):void {
Alert.show("as");
}
当页面从父页面导航时,我没有收到警报....单击。另外编辑这段代码我也可以传递变量。
答案 0 :(得分:2)
将一个公共var(在下面的代码中称为“navi”)添加到与网格中的项目类型相同的DepManagementEvent,然后发送这样的事件:
var event:DepManagementEvent = new DepManagementEvent( DepManagementEvent.EDIT_NAVI );
event.navi = grid.selectedItem;
dispatchEvent( event );
要收听另一方的事件,请为函数添加事件监听器...
addEventListener( DepManagementEvent.EDIT_NAVI, onEditNavi);
private function onEditNavi( event:DepManagementEvent ):void
{
// add logic here
}
由于您在itemRenderer中,因此可以调度冒泡事件,该事件将向上移动到父List / DataGrid,并继续冒泡到显示层次结构中的其他父视图。创建事件时,将第二个参数(“bubbles”)传递为true:
new DepManagementEvent( DepManagementEvent.EDIT_NAVI, true );