Establecer la altura de fila de AdvancedDataGrid mientras se renderiza AdvancedDataGridRendererProvider

Chicos Flexibles,

No se puede establecer la altura de la fila en AdvancedDataGrid mediante el renderizador de cuadrícula de datos AdvancedDataGridRendererProvider personalizado.

Snapcode como aquí

<mx:AdvancedDataGrid id="docId" 
                                     visible="true"
                                     width="100%" height="100%"
                                     dataProvider="{data}" 
                                     horizontalScrollPolicy="on"
                                     verticalScrollPolicy="on"
                                     styleName="MyStyle"
                                     styleFunction="getRowColours" 
                                     headerStyleName="MyStyle2"
                                     >
                    <mx:columns>
                        <mx:AdvancedDataGridColumn id="Name" dataField="name" 
                                                   headerText="Name" /> 
                        <mx:AdvancedDataGridColumn id="Value" dataField="values" 
                                                   headerText="Value" 
                                                   editable="true" />
                    </mx:columns>
                    <mx:rendererProviders>
                        <mx:AdvancedDataGridRendererProvider  id="DocID2"
                                                              columnIndex="1" columnSpan="1"
                                                              renderer="{new ClassFactory(MyRenderer)}" />
                    </mx:rendererProviders>
                </mx:AdvancedDataGrid>

Por favor, avíseme ... ¿cómo debo manejarlo?

Intenté con el siguiente código

Establezca variableRowHeight = true para su DataGrid y luego, dentro de su rednrerer, ajuste la altura medida en el tiempo de ejecución. Pero no debería establecer la altura medida en porcentaje.

Gracias por adelantado. Java

Lo reelaboré y el código de trabajo como el siguiente código ADG y el renderizador también

<mx:AdvancedDataGrid id="adg" dataProvider="{input}" height="350" variableRowHeight="true" >
        <mx:columns>
            <mx:AdvancedDataGridColumn dataField="company" headerText="Company"/>
            <mx:AdvancedDataGridColumn dataField="product" headerText="Product"/>
        </mx:columns>
        <mx:rendererProviders>
            <mx:AdvancedDataGridRendererProvider  id="myDataGridRenderer"
                                                  columnIndex="1" columnSpan="1"
                                                  renderer="{new ClassFactory(DataGridRowTestRenderer)}" />
        </mx:rendererProviders>
    </mx:AdvancedDataGrid>

    import spark.components.Label;
    import spark.components.TextArea;

    private var label1:Label;
    private var textArea1:TextArea;
    private var index:int;

    override public function set data(object:Object):void {
        super.data = object;

        this.removeAllElements();

        label1 = new Label();
        label1.text = object.company;

        this.addElement(label1);

        var textArea:TextArea = new TextArea();
        //textArea.text = object.product;
        //textArea.heightInLines = 2;

        index = object.index as int;

        textArea.heightInLines = index+1;

        textArea.text = object.product;
        /* if((index%2) == 0){
            textArea.heightInLines = 2;
        }else{
            textArea.heightInLines = 4;
        } */
        this.addElement(textArea);
    }

    override public function validateDisplayList():void{
        super.validateDisplayList();
    }

]]>

preguntado el 10 de mayo de 11 a las 13:05

1 Respuestas

No ha establecido variableRowHeight = true en su ADG. También puede usar rowHeight = Number si no lo desea como variable. A partir de ahí, el renderizador de elementos debe tener una altura (número) específica, no un porcentaje, o de lo contrario no funcionará.

contestado el 10 de mayo de 11 a las 18:05

gracias @J_A_X, volví a trabajar en él y funciona como se esperaba en la necesidad. - javaamtho

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.