Datagrid and pagination

Datagrid and pagination

Hi i am new flex i want to know how to develop dynamic pagination for fex

Mohan
12/30/2010 - 02:03

<?xml version="1.0" encoding="utf-8"?>
<mx:VBox xmlns:mx="http://www.adobe.com/2006/mxml" width="100%" height="100%" creationComplete="onInit()">
        <mx:DataGrid id="dtData" width="100%" dataProvider="{aryCurrentCollection}" rowCount="10">
                <mx:columns>
                        <mx:DataGridColumn dataField="LabelText" headerText="LABEL TEXT"/>
                        <mx:DataGridColumn dataField="LabelData" headerText="LABEL DATA"/>
                </mx:columns>
        </mx:DataGrid>
        <mx:ToggleButtonBar id="myTogglebar" itemClick="onItemClick(event);">
                <mx:dataProvider>
                        <mx:String>1</mx:String>
                        <mx:String>2</mx:String>
                        <mx:String>3</mx:String>
                        <mx:String>4</mx:String>
                        <mx:String>5</mx:String>
                        <mx:String>6</mx:String>
                </mx:dataProvider>
        </mx:ToggleButtonBar>
        <mx:Script>
                <![CDATA[
                        import mx.collections.ArrayCollection;
                        import mx.events.ItemClickEvent;
                        private var aryTotalCollection:ArrayCollection;
                        [Bindable]
                        private var aryCurrentCollection:ArrayCollection;
                        private var pageSize:int =10;
                        private var startIndex:int =0;
                        private var endIndex:int =0;
                        private function onInit():void
                        {
                                aryTotalCollection = new ArrayCollection();
                                var obj:Object;
                                for(var i:int =1;i<=100 ;i++)
                                {
                                        obj = new Object();
                                        obj.LabelText = "LabelText "+i.toString();
                                        obj.LabelData = "LabelData "+i.toString();
                                        aryTotalCollection.addItem(obj);
                                }                              
                        }
                        private function onItemClick(evt:ItemClickEvent):void
                        {
                                endIndex = (myTogglebar.selectedIndex +1)*10;
                                startIndex = endIndex - pageSize;
                                if(startIndex < 0)
                                {
                                        startIndex = 0;
                                }
                                aryCurrentCollection = new ArrayCollection(aryTotalCollection.toArray().slice(startIndex,endIndex));
                        }
                ]]>
        </mx:Script>
</mx:VBox>

reply

Add Comment

Put code snippets inside language tags:
[language] [/language]

Examples:
[javascript] [/javascript]
[actionscript] [/actionscript]
[csharp] [/csharp]

See here for supported languages.

Javascript must be enabled to submit anonymous comments - or you can login.
CAPTCHA
This question is for testing whether you are a human visitor and to prevent automated spam submissions.