Datagrid выделил строку в определенном столбце as3

Мне нужно получить значение определенного столбца в выбранной строке через AS3, как я могу это сделать?

Он продолжает возвращать ноль, когда я пытаюсь grid.SelectedItem.text...

Спасибо за помощь! Мне нужно иметь возможность ссылаться на столбец по имени, в данном случае "ID".

РЕДАКТИРОВАТЬ: Это требует события или что-то? Разве не должно быть метода для этого встроенного? Вы бы так подумали...

1 ответ

Решение

Можете ли вы быть более конкретным?

Вы можете получить все необходимые данные из DataGrid, используя selectedItem.yourProperty. Можете ли вы опубликовать фрагмент, который может прояснить ситуацию?

Ссылка на столбец по имени довольно проста:

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

Данные находятся в dataProvider DataGrid, столбец для других целей.

Скажем, у вас есть свойство 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, Джордж

Другие вопросы по тегам