Its probably an issue with the data being treated as a string but LabelFunction won't help you. I don't know that you can use a DropIn that is expecting a boolean with XML data. I think you'd need to override the data setter and test data == "true"
HTH, Ben --- In [email protected], "hoytlee2000" <[EMAIL PROTECTED]> wrote: > > Hello, > > In all the examples I have seen online most of the Drop-In ItemRenderers use an > ArrayCollection when a CheckBox is used as the DataProvider. I tried using an XMLList > collection instead and I don't get any of the CheckBoxes in the ItemRenderer to be > checked when the value is true, by default they all appear as unchecked. I've tested the > values displayed when I take out the ItemRenderer and they show true or false. > > I've tried to see if it made a difference that the values were either text nodes or attr nodes > and it didn't seem to care. So is this a problem with the Drop-in ItemRenderer? Is this > expected behavior? Do I need to create a LabelFunction to cast the XML value as a > boolean? (I tried and it didn't work either) > > I'm kinda baffled and would appreciate any help. > > Thanks, > Hoyt > > The code is very simple: > > XML file: > > <root> > <test> > <testValues> > <boolval attr="false">true</boolval> > <boolval attr="true">false</boolval> > <boolval attr="true">true</boolval> > <boolval attr="true">false</boolval> > </testValues> > </test> > </root> > > The mxml file: > <?xml version="1.0" encoding="utf-8"?> > <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" > creationComplete="testXML.send();" cornerRadius="8" borderStyle="solid" > borderThickness="2" borderColor="#000000" themeColor="#00FF00" > backgroundGradientAlphas="[1.0, 1.0]" backgroundGradientColors="[#008080, > #008080]"> > <mx:Script> > <![CDATA[ > import > mx.controls.advancedDataGridClasses.AdvancedDataGridColumn; > import mx.collections.HierarchicalData; > import mx.binding.utils.ChangeWatcher; > import mx.events.ListEvent; > import mx.events.ItemClickEvent; > import mx.controls.dataGridClasses.DataGridColumn; > import mx.rpc.events.*; > import mx.collections.XMLListCollection; > import mx.controls.*; > import mx.binding.*; > import mx.binding.utils.BindingUtils; > import mx.rpc.xml.*; > > [Bindable] > private var testList:XMLListCollection; > > private function testXMLHandler(evt:ResultEvent):void { > testList = new > XMLListCollection(evt.result.test.testValues.boolval); > txtArea.text += testList.toString(); > } > > ]]> > </mx:Script> > > <mx:HTTPService id="testXML" result="testXMLHandler(event)" resultFormat="e4x" > url="http://localhost/~hoytng/Workspace/studentDB/xml/test.xml"/> > <mx:DataGrid x="401" y="18" width="224" height="100" dataProvider="{testList}"> > <mx:columns> > <mx:DataGridColumn headerText="Column 1" > dataField="@attr"/> > <mx:DataGridColumn headerText="Column 2" dataField="*"/> > </mx:columns> > </mx:DataGrid> > </mx:Application> >

