Datagrid选择某列的行为as3

时间:2010-01-19 19:57:02

标签: actionscript-3 datagrid flash-v3-components

我需要通过AS3获取所选行中某列的值,我该怎么做?

当我尝试grid.SelectedItem.text ...

时,它会一直返回null

感谢您的帮助!我需要能够按名称引用列,在本例中为“ID”。

编辑:这需要举办活动吗?不应该有这种内置的方法吗?你是这么认为的......

1 个答案:

答案 0 :(得分:2)

你能更具体一点吗?

您可以使用selectedItem.yourProperty从DataGrid获取所需的所有数据。 你可以发一个可能让事情变得清晰的片段吗?

按名称引用列非常简单:

myDataGrid.getColumnAt(myDataGrid.getColumnIndex('ID'))

数据位于DataGrid的dataProvider中,该列用于其他目的。

假设您已将ID属性添加到DataGrid:

var dp:DataProvider = new DataProvider();
for(var i:int = 0 ; i < 7; i++)
    dp.addItem({label:'label '+(i+1), ID:Math.random()});
myDataGrid.dataProvider = dp;

如果您为CHANGE事件设置了处理程序,则应该能够获得所需的数据 通过selectedItem

myDataGrid.addEventListener(Event.CHANGE, changed);

function changed(event:Event):void {
    trace('item at index ' + myDataGrid.selectedIndex + ' has ID: ' + myDataGrid.selectedItem.ID);
}

HTH, 乔治