Hi,

> I am facing a weird problem with datagrid. I have added a custom
> itemrenderer in my datatgrid which draws a bullet graph in one of
> the columns.

It sounds like a problem with your itemRenderer.

> for (i = lockedRowCount; i < rowCount; i++)
>    {
>
>                  numCols = listItems[i].length;
>                  var bVisible:Boolean = false;
>                     ...
>                  ...

> Now this code should run till "i" is less than rowCount, but I observed that
> if rowCount = 15 and listItems.length = 14 then after "i" executes the code 
> for
> 14 it increments and also executes for 15.

listItems.length does nothing to determine the length of the loop. The
condition is i < rowCount, so if rowCount = 15, and listItems.length =
14, that makes perfect sense. The loop will run from lockedRowCount to
15 (counting from 0 to < 15 yeilds 14 = listItems.length).

lockedRowCount is "The index of the first row in the control that scrolls".

listItems is a collection of itemRenderers (one for each row in each
column of your DataGrid)

Can you post a code example (it would help to see the itemRenderer and
the Data Grid declaration.

Best Regards,
Ciarán

> I am not getting the cause for this behaviour, is it a bug in flex.
>
>
> Error:
> TypeError: Error #1010: A term is undefined and has no properties.
>     at 
> mx.controls.listClasses::ListBase/mx.controls.listClasses:ListBase::scrollVertically()[C:\dev\flex_201_gmc\sdk\frameworks\mx\controls\listClasses\ListBase.as:5346]
>     at 
> mx.controls::DataGrid/mx.controls:DataGrid::scrollVertically()[C:\dev\flex_201_gmc\sdk\frameworks\mx\controls\DataGrid.as:1923]
>     at 
> com.flex.MyDataGrid::myDataGrid/com.flex.MyDataGrid:myDataGrid::scrollVertically()[C:\Documents
>  and  Settings\someone\My Documents\Flex Builder 
> 2\SampleWidget\com\flex\MyDataGrid\myDataGrid.as:24]
>     at mx.controls.listClasses::ListBase/set 
> verticalScrollPosition()[C:\dev\flex_201_gmc\sdk\frameworks\mx\controls\listClasses\ListBase.as:1043]
>     at 
> mx.controls::DataGrid/mx.controls:DataGrid::scrollHandler()[C:\dev\flex_201_gmc\sdk\frameworks\mx\controls\DataGrid.as:1720]
>     at 
> flash.events::EventDispatcher/flash.events:EventDispatcher::dispatchEventFunction()
>     at flash.events::EventDispatcher/dispatchEvent()
>     at 
> mx.core::UIComponent/dispatchEvent()[C:\dev\flex_201_gmc\sdk\frameworks\mx\core\UIComponent.as:8323]
>     at 
> mx.controls.scrollClasses::ScrollBar/http://www.adobe.com/2006/flex/mx/internal::dispatchScrollEvent()[C:\dev\flex_201_gmc\sdk\frameworks\mx\controls\scrollClasses\ScrollBar.as:1096]
>     at 
> mx.controls.scrollClasses::ScrollBar/http://www.adobe.com/2006/flex/mx/internal::lineScroll()[C:\dev\flex_201_gmc\sdk\frameworks\mx\controls\scrollClasses\ScrollBar.as:1058]
>     at 
> mx.controls.scrollClasses::ScrollBar/mx.controls.scrollClasses:ScrollBar::downArrow_buttonDownHandler()[C:\dev\flex_201_gmc\sdk\frameworks\mx\controls\scrollClasses\ScrollBar.as:1160]
>     at  
> flash.events::EventDispatcher/flash.events:EventDispatcher::dispatchEventFunction()
>     at flash.events::EventDispatcher/dispatchEvent()
>     at 
> mx.core::UIComponent/dispatchEvent()[C:\dev\flex_201_gmc\sdk\frameworks\mx\core\UIComponent.as:8323]
>     at 
> mx.controls::Button/http://www.adobe.com/2006/flex/mx/internal::buttonPressed()[C:\dev\flex_201_gmc\sdk\frameworks\mx\controls\Button.as:1988]
>     at 
> mx.controls::Button/mx.controls:Button::mouseDownHandler()[C:\dev\flex_201_gmc\sdk\frameworks\mx\controls\Button.as:2234]
>
>   ________________________________
Want to start your own business? Learn how on Yahoo! Small Business.

Reply via email to