В моем файле mxml есть сетка данных, скажем, samp.mxml.
<mx:DataGrid id="taskDataGrid" dataProvider="{initDG}" variableRowHeight="true"
editable="true" width="100%" paddingBottom="1" paddingTop="1" height="55" >
<mx:columns>
<mx:DataGridColumn dataField="Select"
editable="true"
rendererIsEditor="true"
itemRenderer="mx.controls.CheckBox"
editorDataField="selected" />
<mx:DataGridColumn dataField="TaskName"
width="220"
editable="true"
rendererIsEditor="true"
itemRenderer="components.taskComponent"/> //i call the component.
<mx:DataGridColumn dataField="TaskId"
itemRenderer="mx.controls.TextInput" />
</mx:columns>
</mx:DataGrid>
В одном из столбцов таблицы данных необходимо отобразить поле ввода текста и кнопку. Поэтому я написал эту функциональность как отдельный компонент, т.е. taskComponent.mxml
<mx:TextInput id="TaskName"
editable="true"
text="{data.TaskName}"
mouseDown="addTaskRow(event);"
/>
<mx:Button id="searchTask" label="..." width="30" height="25" click="showPopUp();"/>
Теперь, если я нажму на поле ввода текста в компоненте, я хочу добавить еще одну строку данных. Раньше у меня это было так: если я щелкаю сетку данных, добавляется строка. Поэтому я написал функцию в самом samp.mxml. Это функция для добавления строки сетки данных.
private function addTaskRow(event:MouseEvent):void
{
taskDataGrid.dataProvider.addItem(
{
}
);
taskDataGrid.height += 30;
}
Если я пытаюсь записать функцию в файле taskComponent, она показывает ошибку «Доступ к неопределенному свойству taskDataGrid». Как использовать сетку данных в компоненте task?