Flex :: AdvancedDataGrid: How To Tell How Many Rows Are Currently Visible
Mar 8, 2011
how to query an ADG (or its rows) to figure out how many rows are currently visible (i.e. not collapsed) when displaying different levels of a hierarchical collection?In other words I'd like a function that tells me that 7 lines are visible in this view and 1 line is available in this one.
I have an Advanceddatagrid that has its variableRowHeight property set to true. I need this AdvancedDataGrid to have its verticalScrollBarPolicy "off" also.
How can I show all rows in that AdvancedADataGrid? (Need to set its height in a so manner that it will be visible all its rows).
I have an AdvancedDataGrid being built dynamically from an html table. The html is provided by a server so my code has to work dynamically for different columns/rows.
I have the columns being built and they display properly, however when I get to adding the rows is where i have issues. the follow code snippet shows iterating over all of the columns and adding a value under each of those columns to an object (to make a complete row) and then adding that to the ArrayCollection that later gets set to the dataProvider for the AdvancedDataGrid
//create an item to work with var chartItem:Object = new Object(); for( var j:int = 0; j < columnResult.length ; j++ ) {
[Code]....
my issue is that when "head" has a value of 0, as in the column title is '0', the item is added at position [0] instead of at 0 as a string.
I looked up some examples and tried with:
chartItem.head but that just assumes the column title is 'head' instead of grabbing the value of the head var
I tried to limit the size of the AdvancedDataGrid to its rows. Currently I am using variableRowHeight to true and at the run time setting the itemRenderer's height. Hence every row has different height. But I found that the logic behind the calculation of Grid's height is plain and simple - measure the height of the first row, then multiply it with the number of rows. Please correct me if I am wrong here I did some POC on the issue and found that during the calculateRowHeight event -> it calculates the individual row height but somewhere down the line it is only multiplying the rowCount with the first row's height. Instead it should calculate every row and should sum up the height. PS: I tried below options:
I'm using Flex 4 and I need to render the data that resembles HTML Table with row span in a Flex component.My inclination was to use a DataGrid but I believe that rowSpan is not supported for that component. I looked at the AdvancedDataGrid but the user does not want to have a tree-structure in any of the columns. Looking to see if there are any hints/tips for modifying the DataGrid or AdvancedDataGrid to produce an "HTML Table with rowspan" look.
I have implemented drag and drop between 2 AdvancedDataGrid, but the default behaviour from Flex displays the row data during the drag using the grid item renderer showing all 5 columns.
Instead, I would like to display an icon / image or my own custom item renderer during the drag and drop.
Is there any way to detect if AdvancedDataGrid itemClick event is actually caused by the user dragging? I'd like to take action on click, but ignore drag.
I have an AdvancedDatagrid, whose dataProvider is an ArrayCollection that contains 1 row of displayable stuff.Flex continues to display about 6 rows, the top one filled, the rest blank.I've set the rowCount="1", with no luck.
after multiple Selection in a advanced datagrid, I want to check if the clicked row, was already selected. Anyway my idea below (in the nested if clause I want to check if the newly clicked item's processing data is already in the added Array Collection) is not working, but I assume there must be a better way to differiante if an click was made on a already selected row.
model.processingData = out; if (model.selectedIndices.length > 1){ //check if item already added
I would like to add new row on the fly (runtime) to my AdvancedDataGrid.I can add it to the data model, but couldn't find a way to make the table render and show the new row.What i am seeking for is to create an effect of expandable item, where clicking on row will show "additional information" (like a drawer) and clicking on row expand button will reveal it's children.I saw examples of this for dataGrid (http:url...), but not for AdavancedDataGrid.Only way I found to do this is to add a new child and use openItem, but this cause the other children to be visible as well.
I've got a subclass of AdvancedDataGrid showing a tree-like data structure. How can I, given the index returned by calculateDropIndex, get the item at that index? After reading through reams of code, it seems like the least terrible way is:
var oldSelectedIndex:int = this.selectedIndex; var mouseOverIndex:int = this.calculateDropIndex(event); this.selectedItem = mouseOverIndex; var item:* = this.selectedItem; this.selectedIndex = oldSelectedIndex;
The other option seems to be tinkering around with the iterator property... But, judging by the way I've seen it used, that will get pretty harry pretty quickly too. So, how can I get the item at a particular index in an advanced datagrid without going insane?
Is it possible to use a renderer for for a treecolumn in an advanceddatagrid and still keep the hierarchal functionality? If I use a renderer provider I lose the the arrow for the tree dropdown. I want to keep the tree functionality and change the display of the column.(and not just the folder image)
I've a problem, I'm using an AdvancedDataGrid. It loads about 3000 records with about 20 columns. I constantly get Flex execution timeout because the grid executes a lot inside LayoutManager. How can I make it asyncronousely or faster at all?
I'm making an application where I display an AdvanvedDataGrid with one column with dates(in format DD/MM/YYYY) and another with datetimes (in format HH:MM). I'd like to sort dates according with the datetimes as well(just clicking in the header of the column), there is an examplen of the expected behaviour:
I am using an AdvancedDataGrid with some hierarchical data. In the first column, I want to indicate whether or not the "name" field is editable by graying out the text for the "name" property of my objects. It's very odd, but when I set the AdvancedDataGridColumn's dataField property to "name", and have it in the first column, it seems to completely ignore my inline ItemRenderer. If I change the dataField property to something else, or change the column ordering so the Name column isn't first, everything suddenly works.
Let me know if any more code would help, but here is the simple ItemRenderer I'm trying to use in the first column:
I am using in-built sort functionality provided by AdvancedDatagrid.I have multiple columns and suppose I have 10 rows. All 10 rows have the same data in one column.If I sort on that column, then it sorts and the data in other columns which is different is also being sorted (reshuffled).My requirement is if I am sorting on a column with same data, it should not sort the data in other columns.To understand it better, check the link menioned below URL...In the above link mentioned, if you click on region column, other columns like territory or actual will change the values i.e. the rows gets reshuffled.This should not happen as we are sorting on a column which has same values. Does anybody know how this can be handled in Flex 3 for AdvancedDataGrid.
I have a DataGrid which contains a DataGridColumn with a textinput and DataGridColumn with a Button.The DataGrid is bound to some XML which displays values in the text box.When the button for a row is clicked I need to get the value out of the text box and save it into the relevant XML node.My solution was just to pass the id of the row to the button click event then loop over the rows until I find the id then just grab the text box value. Simple. However the only advice I can find on looping over the rows is via the underlying dataProvider, which is nonsense as the two aren't the same thing.
I have this datagrid which has columns with a NumericStepper as an itemEditor where the user can change the number of items he wants to buy. How can I calculate the sum of all cells when the user updates datagrid's values?
EDIT 1
My datagrid is about colors and sizes of a product. The columns are generated dynamically from this function
private function getColumn(dataField:String, headerText:String,editable:Boolean) : DataGridColumn { var column:DataGridColumn = new DataGridColumn(dataField);
[Code]....
the row.size28 is generated dynamically. So it could be row.size29,row.size30 etc.
How can I loop through all my cells without knowing their data.property?
seqno | NAME | COMPANY 1 | BOB | D&T 2 | Jenny | M&Y 3 | Jane | D&T
It is possible to have buttons as [MOVE UP] and [MOVE DOWN] so that when I select a row in a datagrid and press one of those button that the order changes and the seqno updates accordingly.
Meaning if I select Jane and press the [MOVE UP] button, the new order would be;
seqno | NAME | COMPANY 1 | BOB | D&T 2 | Jane | D&T 3 | Jenny | M&Y
I have a data grid consisting of 3 columns & many rows, i want to show only the first 20 rows to user. Is there any way i can show only the first 20 rows in my datagrid.After by clicking button 'next', next 20 rows should display and so on...
I am creating an app where users input their investment info into a datagrid on each row one row at a time. As they move along new rows are dynamically generated so they can input new investments. As the user moves and puts in new info I want a column to display what row the user is on (or better said what number investment he is on). how to create the function:
private function rowCount():void { myDG.dataProvider=tasks;
I'd like to implement a custom drag on an AdvancedDataGrid tree structure, which only allows the drag on the branches (not leaves).I'm having much difficultly with this, trying to use the MouseDown event, but not having luck! I think I've got the mousedown able to figure out if the item is a branch of leaf. Any help on how to perform the custom drag with an advanceddatagrid?? [code]
How do I determine which Flex AdvancedDataGrid cell - row and column index - I've just dropped onto? calculateDropIndex seems to give me the row, but how do I get the column?