header
ask question
Click here to ask Question Now Its free No registration required. Flash, Flex, Flash Media Server, ActionScript,Adobe Air. Most questions receive a response in an hour.
Abhinay
Points:0
Posts:0

1/17/2012 11:54:19 PM

Title: checkbox in datagrid


Checkboxes are randomly getting slected when I scroll down. can anyone please explain with code.
Thanks.

    			var freezePair:Boolean;
    			var chkBox:mx.controls.CheckBox;
    			public var myDP1:ArrayCollection;
    			[Bindable]
    			public function initDataGridData():void
    			{
    				myDP1 = new ArrayCollection();
    				for (var obh:Number = 1; obh<=6 ; obh++)
    				{
    					for (var pair:Number = 1; pair<=20 ; pair++)
    					{
    						
    						myDP1.addItem({obhNumber: obh, pairNumber: pair, isChecked: false});
    					}
    					
    				}
    				
    				
    				gridTable.dataProvider=myDP1;
    				gridTable.validateNow();
    				
    			}
    			
    			
    			public function fetchProfit(event:Event): void
    			{
    				var obh:Number = gridTable.selectedItem.obhNumber;
    				var pair:Number = gridTable.selectedItem.pairNumber;
    				
    				//fetch the profit from backed and display
    				gridTable.selectedItem.profit = numberFormatter.format(obh+pair);
    				gridTable.invalidateList();
    				
    				//Alert.show("Are you sure you want to freeze the trade", "Warning", (Alert.NO | Alert.YES), this,null, null, Alert.NO, null);
    				//var index:Number = gridTable.selectedIndex;
    			}
    			
    			
    			public function showWarning(flag:Boolean, mychkBox:mx.controls.CheckBox):void
    			{
    				freezePair = flag;
    				chkBox = mychkBox;
    				
    				if(flag){
    					Alert.show("Are you sure", "Warning", (Alert.NO | Alert.YES), this, handleYesNoWarningDialog, null, Alert.NO, null);
    				}else {
    					Alert.show("Are you sure ", "Warning", (Alert.NO | Alert.YES), this, handleYesNoWarningDialog, null, Alert.NO, null);				
    				}
    				
    			}
    			
    			
    			
    			private function handleYesNoWarningDialog(event:CloseEvent):void {
    				
    				if(event.detail == Alert.YES){//Yes
    					var obh:Number = gridTable.selectedItem.obhNumber;
    					var pair:Number = gridTable.selectedItem.pairNumber;
    					validateDisplayList();
    					
    					//call back end code to freeze pair
    					
    					//show PnL also
    					
    					
    				} else if(event.detail == Alert.NO){//No
    					// do nothing
    					chkBox.selected = !freezePair;
    					validateDisplayList();
    					
    					//.setStyle("color","#F7D2AE");
    				}   
    			}
    			
    			/*private function adminFaultHandler(event:FaultEvent):void 
    			{
    			if(event.fault != null) {
    			var a:Number = gridTable.selectedItem.toString();
    			gridTable.alpha = 1;
    			Alert.show(event.fault.toString());					
    			}
    			}	*/		
    			
    			
    		]]>
    	</fx:Script>
    	
    		<s:VGroup>
    			<mx:AdvancedDataGrid editable="false" id="gridTable" paddingLeft="0" paddingTop="0" paddingBottom="0" width="{this.width}" height="{this.height}"  borderColor="#F8F1F1" selectionMode="multipleRows">
    				
    				<mx:columns>  
    					<mx:AdvancedDataGridColumn id="OBH" headerText="OBH #" width="80" dataField="obhNumber" textAlign="center" sortable="true"/>
    					<mx:AdvancedDataGridColumn id ="PairNumber" headerText="Pair #" width="80" dataField="pairNumber" textAlign="center" sortable="true"/>
    					
    					<mx:AdvancedDataGridColumn headerText="Pair Control" width="100" editable="false" sortable="false">
    						<mx:itemRenderer>
    							<fx:Component>
    								<s:MXAdvancedDataGridItemRenderer verticalCenter="0">
    									<s:HGroup>
    										<mx:CheckBox selected="false" textAlign="center" id="chkBox" color="#F7D2AE" symbolColor="#0"   label="Freeze" click="outerDocument.showWarning(chkBox.selected, chkBox);"/>  
    										
    									</s:HGroup>
    								</s:MXAdvancedDataGridItemRenderer>
    							</fx:Component>
    						</mx:itemRenderer>
    					</mx:AdvancedDataGridColumn>
    					
    					<mx:AdvancedDataGridColumn headerText="Fetch Profit" width="100" editable="false" sortable="false">
    						<mx:itemRenderer>
    							<fx:Component>
    								<s:MXAdvancedDataGridItemRenderer>
    									<s:HGroup>
    										<mx:Spacer width = "100%"/>
    										<mx:Button width = "100%" verticalCenter="0"  click="outerDocument.fetchProfit(event);" label="Fetch"  fontWeight="bold" />  
    										<mx:Spacer width = "100%"/>		
    									</s:HGroup>
    								</s:MXAdvancedDataGridItemRenderer>
    							</fx:Component>
    						</mx:itemRenderer>
    					</mx:AdvancedDataGridColumn> 
    					
    					<mx:AdvancedDataGridColumn dataField="profit" headerText="Profit" width="70"  textAlign="right" editable="false" sortable="true">
    						<!--mx:itemRenderer>
    						<fx:Component>
    						<s:MXAdvancedDataGridItemRenderer color="white" accentColor="white">
    						<fx:Script>
    						<![CDATA[
    						import mx.events.FlexEvent;
    						]]>
    						</fx:Script>
    						<s:HGroup>
    						<mx:TextArea id="profitArea" editable="true" width = "110" fontWeight="bold" />  										
    						</s:HGroup>
    						</s:MXAdvancedDataGridItemRenderer>
    						</fx:Component>
    						</mx:itemRenderer-->
    					</mx:AdvancedDataGridColumn>
    					
    				</mx:columns>
    			</mx:AdvancedDataGrid>			
    			
    		</s:VGroup>
    </mx:Application>





Post your Reply
Name  

Email

Type your Reply or Answer

Are you human? What is 5+6 



Members Login

Email  
Password
Forgot Password





This website focus on: Flash | Flex | FMS | RED5 | WOWZA | Flash Media Server | Adobe AIR | ActionScript,Flash Solutions | Flash Question | Flash Answers | Flash Developers | Flash Problem, Flash Help, Flash bugs, Flash workaround | Flash Blog | Flex Question Answers | Flash Forum | Flex Development | Actionscript development | Flash development | Adobe AIR development
Copyright © 2008 AskMeFlash.com. All rights reserved. Privacy Policy | Terms & Conditions