Gente, por favor, mudei de estação de trabalho e agora estou recebendo
o seguinte erro:
Quando clico na coluna cujo dataField é edit, ANTES DA ALERT APARECER,
eu recebo várias vezes essa msg de erro.
ReferenceError: Error #1069: Property edit not found on VO.VOCarro and
there is no default value.
at mx.controls::DataGrid/itemEditorItemEditEndHandler()[C:\autobuild
\3.2.0\frameworks\projects\framework\src\mx\controls\DataGrid.as:4860]
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at mx.core::UIComponent/dispatchEvent()[C:\autobuild\3.2.0\frameworks
\projects\framework\src\mx\core\UIComponent.as:9298]
at mx.controls::DataGrid/endEdit()[C:\autobuild\3.2.0\frameworks
\projects\framework\src\mx\controls\DataGrid.as:4041]
at mx.controls::DataGrid/deactivateHandler()[C:\autobuild
\3.2.0\frameworks\projects\framework\src\mx\controls\DataGrid.as:4565]
at mx.managers.systemClasses::StageEventProxy/stageListener()[C:
\autobuild\3.2.0\frameworks\projects\framework\src\mx\managers
\systemClasses\StageEventProxy.as:35]
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at mx.core::UIComponent/dispatchEvent()[C:\autobuild\3.2.0\frameworks
\projects\framework\src\mx\core\UIComponent.as:9298]
at mx.controls::DataGrid/endEdit()[C:\autobuild\3.2.0\frameworks
\projects\framework\src\mx\controls\DataGrid.as:4041]
at mx.controls::DataGrid/itemEditorFocusOutHandler()[C:\autobuild
\3.2.0\frameworks\projects\framework\src\mx\controls\DataGrid.as:4734]
at flash.display::Stage/set focus()
at mx.core::UIComponent/setFocusLater()[C:\autobuild\3.2.0\frameworks
\projects\framework\src\mx\core\UIComponent.as:8815]
Acontece que meu datagrid recebe um array de VOCarro. E nessa classe
realmente não existe a propriedade edit. Porém, eu coloquei ali
somente para identificar a coluna no meu evento itemEditBegin. Eu fiz
a mesma coisa em um projeto anterior e não tive problema, pelo menos
que me lembre não fiz nada diferente.
Alguém pode me ajudar?
Eu queria de alguma forma, identificar que aquela coluna foi clicada,
pq ao clicar nela eu abro um popup para edição do item.
On 27 jul, 19:27, Bruno Carneiro <[email protected]> wrote:
> Alguém?
>
> On 27 jul, 15:00, Bruno Carneiro <[email protected]> wrote:
>
> > Gente, olhem o meu código. Quando eu clico na coluna que tem o
> > dataField = "edit" o alert mostra em vazio ao invez de "edit". Não
> > consigo entender...
>
> > <?xml version="1.0" encoding="utf-8"?>
> > <mx:TitleWindow xmlns:mx="http://www.adobe.com/2006/mxml"
> > layout="absolute" width="752" height="556"
> > title="Lista de Carros" showCloseButton="true"
> > close="PopUpManager.removePopUp(this);"
> > creationComplete="init();" >
> > <mx:Script>
> > <![CDATA[
> > import mx.controls.dataGridClasses.DataGridColumn;
> > import mx.events.DataGridEvent;
> > import mx.managers.PopUpManager;
> > import mx.rpc.events.FaultEvent;
> > import mx.rpc.events.ResultEvent;
> > import mx.events.ListEvent;
> > import mx.controls.Alert;
>
> > private function
> > dg_carros_itemEditBegin(event:DataGridEvent):void{
> > Alert.show(event.dataField); //Alert aparece em
> > branco
> > }
>
> > private function faultListener(event:FaultEvent):void {
> > Alert.show(event.fault.message, "Error");
> > }
>
> > private function getCarroListener(event:ResultEvent):void{
> > var carros:Array = event.result as Array;
> > this.dg_carros.dataProvider = carros;
>
> > }
>
> > private function init():void{
> > this.carroRemote.getCarro();
> > }
> > ]]>
> > </mx:Script>
>
> > <mx:RemoteObject id="carroRemote" destination="zend"
> > source="CarroService" showBusyCursor="true" fault="faultListener
> > (event)">
> > <mx:method name="getCarro" result="getCarroListener(event)"
> > />
> > </mx:RemoteObject>
>
> > <mx:DataGrid x="0" y="0" width="100%" height="100%" id="dg_carros"
> > editable="true" itemEditBegin="dg_carros_itemEditBegin(event);">
> > <mx:columns>
> > <mx:DataGridColumn headerText="Ano fab"
> > dataField="ano_fab"
> > editable="false"/>
> > <mx:DataGridColumn headerText="Ano mod"
> > dataField="ano_mod"
> > editable="false"/>
> > <mx:DataGridColumn headerText="Marca"
> > dataField="marca"
> > editable="false"/>
> > <mx:DataGridColumn headerText="Modelo"
> > dataField="modelo"
> > editable="false"/>
> > <mx:DataGridColumn headerText="Motor"
> > dataField="motor"
> > editable="false"/>
> > <mx:DataGridColumn headerText="Portas"
> > dataField="nro_portas"
> > editable="false"/>
>
> > <mx:DataGridColumn dataField="edit"
> > headerText="" width="30" sortable="false" textAlign="center"> // EU
> > CLICO AQUI!!!!!
>
> > <mx:itemRenderer>
> > <mx:Component>
> > <mx:HBox>
> > <mx:Image width="30"
> > horizontalAlign="center" source="@Embed
> > (source='../imgs/edit.png')" />
> > </mx:HBox>
> > </mx:Component>
> > </mx:itemRenderer>
> > </mx:DataGridColumn>
>
> > <mx:DataGridColumn dataField="" headerText=""
> > width="30"
> > sortable="false" textAlign="center">
> > <mx:itemRenderer>
> > <mx:Component>
> > <mx:HBox>
> > <mx:Image width="30"
> > horizontalAlign="center" source="@Embed
> > (source='../imgs/delete.png')" />
> > </mx:HBox>
> > </mx:Component>
> > </mx:itemRenderer>
> > </mx:DataGridColumn>
> > </mx:columns>
> > </mx:DataGrid>
>
> > </mx:TitleWindow>
--~--~---------~--~----~------------~-------~--~----~
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para [email protected]
Para sair da lista, envie um email em branco para
[email protected]
Mais opções estão disponíveis em http://groups.google.com/group/flexdev
-~----------~----~----~----~------~----~------~--~---