Flex :: AdvancedDataGrid Dynamic Text Value Coloring - ItemRenderer
Apr 8, 2010
In my AdvancedDataGrid, I am adding dynamic values to cells by dragging a cell value to other cells. While copying, I am setting the value to listData and setting the Red color to the value in ItemRenderer. Everything is working fine, but when I scroll down/up, the values remains in the cells where thay are supposed to be(as I am setting to listData) but the coloring behaves wierd(as I am trying to set the color in ItemRenderer).
I don't want to store the color of the value, but I should be able to see the dynamically created values in Red color. Is there a way, I can do this? Do I need to set the color to actual dataprovider object and then check in ItemRenderer?
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 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:
When not editing the cell, it shows a centered date as plain text. When editing, it shows a DateField editor. The second example is exactly the same as far as I can tell, other than the fact that it is an AdvancedDataGridColumn. Using that code with an AdvancedDataGrid, when I go into edit mode I can see the text from the normal item renderer behind the DateField editor (between the text input and calendar icon).
I have an AdvancedDataGrid with variable row height set to true.I have written a cutsom item renderer based on the DataGroup spark component. Each row in the grid has multiple entities to display, the x position and width of the entites are based on the data of the entity itself.I have a custom layout written for the DataGroup that measures and posistions each entity based on its data. Each entity in each row can either truncate or not truncate its label. When the labels are not truncated, I calculate the actual width of the object and validate its size manualy (to force the label to have the correct width and layout all its text lines and remeasure itself) within the DataGroup's Layout's measure method to accurately measure the datagroup itself.The layouts, measuring, sizing, display, etc all work correctly. The entitys report the correct height they need when not truncating the labels, the datagroup reports the correct size it needs to draw all of its row's worth of entities (all from measure methods like they need to under the UIComponent lifecycle).When inside the AdvancedDataGrid itself, rows are not sized correctly. The majority of the rows do not require multiple lines and display just fine. Those that require multiple lines have larger row heights, but not large enough to accomodate the entire text in most cases. The DataGroup for that row (and its itemRenderers) are clipped. Furthermore, When scrolling the grid, every row scrolled onscreen is the default 1 text line height, irregardless of data.In any case, resizing the AdvancedDataGrid (not resizing its columns, but the grid itself) forces all rows to snap to the correct desired height.Scrolling again produces incorreclty sized rows.
Additionally, the layout of each entity in the row is determined by several external factors - most commonly being visible range (along the horizontal). Changing this visible range will trigger all item renderers to resize themselves (through the custom layout class) to their new sizes and remeasuring the new DataGroup layout. This actually triggers a custom hierarchy parser which rebuilds all the ArrayCollections used inside the AdvandedDataGrid data provider, so ArrayCollections are dispatching change events that each row's DataGroup reacts to, so the DataGroup itself is invalidating its size and layout.These resizes do not trigger the AdvancedDataGrid to remeasure its row heights, and I must rezise the ADG itself again to snap the rows to the correct height.Anyone have any experience with dynamically sized rows in an AdvancedDataGrid or ItemRenderers which must forcibly make the AdvandedDataGrid re-layout its rows?
Unfortunately, I cannot provide source code as there are a huge number of classes going into this, hierarchial data, rolling up closed nodes into multiple rows, custom hierarchy parsers, a multitude of item renderers - that and its a Government contract.I have run into a similar issue with a much simpler item renderer, basically a label that will respect a max height, resize itself upto that height as its wordwrapping data will require, and then create scrollbars for itself. Again, the data sizes almost correclty when the grid is created, then changing the column width within the grid does not resize the row height as the item renderer adjusts to its new width. Only in resizing the grid itself do the item renderers resize correctly, create scroll bars, and the grids row heights are correct.The source for that item renderer:[code]Very wide column, no scroll bars, the labels measured height is shown in the row height.Smaller width column, some renderers have hit max height and are creating scroll bars, the last renderer is still using the measured height of the label.Smaller still column, all max heights are hit and scrollers are present for all labels, scrollers will select the row when used but allow scrolling so all text is viewable.
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.
I have a problem with my AdvancedDataGrid which has inside it colums of radiobuttons.The problem is when I click on a cell in the Grid, the Radiobuttons selection become instable, some of the radio buttons of other colums become selected.The behavior I want is that when the selects the RadioButtons(the circle or its label), it become selected and not all the Cell in which the radioButton is.Here my code:
for (var idxStudio : int = 0; idxStudio < p_studios.length; idxStudio++) { innerColumn = new AdvancedDataGridColumn();[code]....
I am creating a dynamic text box, defining it as html, and reading a text to it from xml file. is there a way for me to pick some words in the text and color it in a different color from the one defined when creating the text box?
I have a bunch of dynamic validators that I create in my application.I have an mxml which contains a s:DataGroup.The DataGroup contains an itemRenderer. In this itemRenderer, I have a combobox which I want to validate.I perform the validation like this ont the creationComplete of the itemRenderer:[code]Of course, when I do this, the itemrenderer is recycling, and the validator appears in places in which i do not want it to.
I have a advancedDatagrid with column headers having input text boxes for filtering.The column is filtered according to input text when I use characters as data inside that column.But when I use numbers in the column field,filtering does not happen.Can anyone tell me what went wrong.
I'm trying to export an AdvancedDataGrid to CSV. This is easy enough for non-hierarchical data, but when using a HierarchicalCollectionView to show treed data it gets trickier.
how to access each of the cells just as they appear on screen when all of the nodes are expanded?
I am trying to overlay a label onto an AdvancedDataGrid when there are no results returned from a call for the data. Here is a mockup of what I am trying to accomplish [URL]. I tried following this previous answer: Drawing an overlay in custom flex component, but this would not work for me because an AdvancedDataGrid is not a Container (and as such does not have a rawChildren property). I would prefer not to need to mess with the data provider, because this table will be used in many location which will have different columns and labelFields.
I have some rich text created using the flex (flash builder 4) rich text input control. I want to display at least some of it in a column of an AdvancedDataGrid control.
my current idea is that I'll have a sprite as a swf. This sprite has 2 dynamic colors (if you don't know what that is, imagine a sprite that has a color depending on which team he is in, something like that). So I'll have 3 clips on 3 layers.
- non colour - colour 1 - colour 2
thing is, I don't want it to be solid colours. (and i'm not the artist.) Am I heading in the right direction?
I have two objects; background and highlight. Highlight has a certain amount a opacity set to it 45%, so it appears lighter then the background. I want to color just the background in as3/flash builder 4, but when I color the flash symbol, the highlight region also gets colored and I don't want to do that.
I also don't want to have two separate symbols, because then I'll have to add more code and variables.Is there any way to color just the background and let the highlight object just be?
I will redesign a product page that contains products like Vase, Ceramic Plates and more, Customers can customize the colors of the product. Now I need some advice what approach would best fit, I am planning to use Flash/Flex/Actionscript in implementing this; That way I can minimize loading to many jpegs for the product and at the same time making the page more interactive.
I was wondering which IDE choice you flash developer use to write the code....I use Flex Builder for my AS3 only project so the code below will display nicely with coloring keywords. I wanted to know if there are better choices there...Also, does flash developer do the AS3 programming only? Do they do graphic design at all?
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.
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?
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?