2011-08-03 34 views
0

请告诉我一个人,我如何发现一个项目在Flex的数据网格中编辑完成?我如何在Flex中的数据网格中发现项目编辑完成?

其实我正在使用Flex 4并为AIR开发应用程序,我需要制作一个可编辑的网格。我所有的自定义编辑器都能正常工作,但本机textinput类型编辑器无法正常工作。

这是我的完整代码。

当我编辑它时,第三个和最后一个datagridcolumn不是更新值。

<mx:DataGrid id="id_RecentPatientGrid" includeInLayout="{includeGridInLayout}" visible="{includeGridInLayout}" 
      rowCount="{id_RecentPatientGrid.dataProvider.length + 1}" 
      width="100%" verticalScrollPolicy="off" 
      editable="true" 
      itemEditBegin="recentPatientGridItemEditBeginHandler(event)" 
      itemEditEnd="recentPatientGridItemEditEndHandler(event)" 
      dataProvider="{immunizationCollection}" draggableColumns="false" useRollOver="false" 
      sortableColumns="false" fontFamily="Verdana" verticalGridLines="false"     
      styleName="QIGrid" 
      headerStyleName="QIGridHeader" 
      headerBackgroundSkin="com.adobe.Quivus.view.controls.skins.dataGridSkins.DataGridHeaderBlueSkin" 
      headerSeparatorSkin="com.adobe.Quivus.view.controls.skins.dataGridSkins.DatagridHeaderSeparatorSkin"> 
    <!--headerBackgroundSkin="com.adobe.Quivus.view.controls.skins.dataGridSkins.dataGridHeaderSkin"--> 
    <mx:columns> 
     <!-- Changes by baber waqas for displaying serial number --> 
     <mx:DataGridColumn headerText="Sr.#"  width="50" editable="false" labelFunction="displayRowNum" /> 
     <mx:DataGridColumn headerText="Visit Date" width="50" editable="false" labelFunction="displayVisitDate" /> 
     <mx:DataGridColumn headerText="Date Admin" width="60" editable="true" dataField="DateAdmin" editorDataField="text"> 
      <!--editorDataField="selectedDate" itemRenderer="com.adobe.Quivus.view.controls.custom.itemRenderer.DateRenderer4DG">--> 

      <!--<mx:itemEditor> 
       <fx:Component> 
        <components:LabelDateField width="100%" editable="true" text="{outerDocument.id_DateAdmin.text}" 
            selectableRange="{{rangeEnd : new Date()}}" /> 
       </fx:Component> 
      </mx:itemEditor>--> 
     </mx:DataGridColumn>      
     <mx:DataGridColumn dataField="ImmunizationType.ImmunizationTypeName" width="120" headerText="Immunization" editorDataField="editorText" itemRenderer="mx.controls.Label"> 
      <mx:itemEditor> 
       <fx:Component> 
        <itemEditors:SparkComboBoxItemEditor dataProvider="{outerDocument.model.immunizationTypeDTOList}" labelField="ImmunizationTypeName" width="120"/> 
       </fx:Component> 
      </mx:itemEditor> 
     </mx:DataGridColumn> 
     <mx:DataGridColumn dataField="Dose" headerText="Dose" width="50" editorDataField="editorText"> 
      <mx:itemEditor> 
       <fx:Component> 
        <!--<VBImmunization:ImmunizationItemEditor dataProvider="{outerDocument.model.immunizationDoseList}" immunizationField="Dose" width="100%"/> 
        --> 
        <itemEditors:SparkComboBoxItemEditor dataProvider="{outerDocument.model.immunizationDoseList}" labelField="Dose" width="50" height="100%"/> 
        </fx:Component> 
      </mx:itemEditor> 
     </mx:DataGridColumn> 
     <mx:DataGridColumn dataField="LotNumber" headerText="Lot#" width="50" editorDataField="editorText"> 
      <mx:itemEditor> 
       <fx:Component> 
        <itemEditors:SparkComboBoxItemEditor dataProvider="{outerDocument.model.immunizationLotNumberList}" labelField="LotNumber" width="50"/> 
       </fx:Component> 
      </mx:itemEditor> 
     </mx:DataGridColumn> 
     <mx:DataGridColumn headerText="Next Due" width="50" dataField="NextDoseDue" editable="true" editorDataField="text"> <!-- editorDataField="selectedDate" itemRenderer="com.adobe.Quivus.view.controls.custom.itemRenderer.DateRenderer4DG">--> 
      <!--<mx:itemEditor> 
       <fx:Component> 
        <components:LabelDateField width="100%" editable="true" text="{outerDocument.id_NextDue.text}" /> 
       </fx:Component> 
      </mx:itemEditor>--> 
     </mx:DataGridColumn> 
     <!--<mx:DataGridColumn dataField="VisitStatus" headerText="Status" itemRenderer="com.adobe.Quivus.view.controls.custom.itemRenderer.DateRenderer4DG" />--> 
     <commons:DataGridColumnEx width="85" headerText="" editable="false" data="{deleteColumnData}" dataField="Note" property="PatientImmunizationId" section="{QIPopUpManager.IMMUNIZATION}" itemRenderer="com.adobe.Quivus.view.controls.custom.patientExamView.quickInput.commons.DeleteRecordRenderer" /> 
    </mx:columns> 
</mx:DataGrid> 

由于提前

回答

1

只是做一些如:

<components:LabelDateField id="df" 
          width="100%" editable="true" 
          text="{outerDocument.id_DateAdmin.text}" 
          selectableRange="{{rangeEnd : new Date()}}" 
          change="{outerDocument.id_DateAdmin.text = df.selectedDate}"/> 
相关问题