Flex :: Dynamically Change The Width Of Datagrid Column?
Jun 16, 2009
Can we change the width of the datagrid column dynamically by clicking on the border of the column in order to display the complete string which is too long to be displayed and needs to be scrolled ? If so, How ?
Also, how can we ensure that the column width changes dynamically based on the number of characters / length of string; since many a times the data is too long to be displayed. Can we set the column width to take the length of data into consideration before displaying onto the datagrid ?
I am using a singleton class (popup, which means it doesn't forget the last used variables) which contains a datagrid. I am making various columns visible/invisible, setting the widths and headers in accordance to data received from a database call. Everything works fine except that when I put the breakpoints before and after the point where I change width of columns, I do not see the change in width of datagrid at all! Instead I see some values totally out of sync as widths of datagrid column! However, since it is a singleton class, the next time I call this popup, I see widths which I did set up in last call.
I must be messing up in calling the setWidth() function (which is my custom function which changes the width of datagrid in action script). What should be the point where I should call this function? I tried in creationComplete, show and in the setter of dataprovider.
I have a Flex 4, mx:DataGrid with the following (pertinent) properties set:
width="100%"horizontalScrollPolicy="off"
I have the minWidth set on all of the DataGridColumns and the width set on one of them. If I simply maximize/minimize the display (in browser or stand-alone flash player) of the application, the columns scale up and down nicely. But if you grab the edge of the application and drag it to make it bigger, only one column grows really big. When you drag the size down again, the one column remains big, but all of the other columns get squished way down.
In my flex app I store the widths and visiblility of columns in an xml file. When the app loads it reads from the xml file and sets he columns values as applicable:
In flex, I have a datagrid with 22 columns. I initially display all the columns. The width of each column right is uniform. Now when i change the visiblity of a few columns, the width of each column varies. How do i maintain a uniform column width for each column whether or not there are any invisible columns? how do i get the count of number of visible columns. the ColumnCount property returns total number of columns and not the number of visible ones.
In the below example I has called the OptimizeDataGrid method on Button Click event to resize the Column according to the data. whereas on the First Time of the Button Click event It called the function whereas the Datagrdi Column width alone is not set properly.whereas on second time it is working properly.For Eg : In the below statement the text value is coming as 55 and widthPadding is comes as 25. but the sum of these two value is not in the dg.columns[col].width.
dg.columns[col].width = text + widthPadding;
But the same is working on the second time of the Button click event.
I'm using a mx.containers.Grid to layout some data, and the last column is a set of checkboxes. MXML Code snippet:[code]Basically, I want the labels & text values to align however the Grid component sees fit. However, I'd like the checkboxes to be right-aligned. I've tried setting the width of the textValues to 100% and it does nothing. I don't want to use hard-coded pixel values/canvases/etc because it is important that this is easy to change/update.
I have a view component called viewBase where I defined a advanced datagrid with few item renderers for datagrid columns. Now I have a requirement where I need to use the same view viewBase component, but not required to use any item renderers.
how to override the itemrenderers which are declared in a view component?
It seems like there are various hacks out there to change the background colour of the row of a datagrid but all of them seem to happen at render time.See: http:[url]....I have a datagrid where I need to change row colours to red then back to normal frequently based on changes to the bound ArrayCollection. So I'm looking for a way to change the row colours dynamically.Obviously as the changes are happening frequently it would be nice if changing the background colour of the row wasn't an expensive process.
i have a simple datagrid having 2 columns named as image and place. where image column has mx.controls.Image itemRenderer and place is simple. my requirement is to change itemRenderer of image cell when it will be clicked. i means to say when user click on any image from image column than i want to show that image path in editable mode and when user edit that path then the selected cell will start displayed the updated image.
I am a scientist who knows molecular biology well but is a neophyte to Flex/ActionScript. I created a ColumnChart representing a probability histogram. I want to allow users to select a range of values on the X-axis via 2 sliders separate from the chart itself (one for the minimum value, one for the maximum.) By default the column bars are blue. But when the user selects a range, I would like to highlight that range in the chart a different color (eg. orange). How can this be done using ActionScript?
I have a DataGrid in my project. It doesn't fit's the width of the form, so the scrollBar appears. The DataGrid, on it's initial state, displays a few columns and a part of the next column (which would appear after scrolling). Is there any way, I can get the width of this, displaying part?
In a flex datagrid, by default clicking on column headers does sorting. I want it such that if a user clicks a column header the entire column is selected. I have the datagrid listening for the HEADER_RELEASE event so I know when the column header is clicked.
How can I have the column and header appear highlighted similar to how a row is highlighted when selected?
Context: I have a data grid where the following has been implemented. tabbing through each column in a single row and creating a new row when tabbing from the last column. The last column in my datagrid is now a checkbox. I set the 'editable' to false as shown below (since we don't want editable text to be shown when user clicks on/tabs to checkbox.
Problem: When I tab through the columns of a given row, I cannot tab to the checkbox column and therefore cannot use the space bar to toggle between checked/unchecked. The user is forced to use the mouse to toggle the check box. Question: How do I let user tab to the checkbox column, and press spacebar to toggle between checked and unchecked?
We have a Datagrid:[code]where practiceJoinRequestThicks is an ArrayCollection of PracticeJoinRequestThick object.The PracticeJoinRequestThick has an Practice Object.Practice has an arraycollection "PracticeContactAddresses" which is an arraycollection of PracticeContactAddress object and Practice ContactAddress object has Address object which has the field city:String.Now when I try to display the City, it does not work.
I have defined the datagrid as followsmx:DataGrid id="dg" width="100%" height="100%" >n the part i am trying to get the details from the database and setting the dataProvider for the DataGrid as follows.
var arrayContent:ArrayCollection = new ArrayCollection(); for(var i:int=0;i<assetClassDetails.length;i++) {
I am stuck in a problem working on Flex datagrid, in an AIR application. How can I access a specific row in datagrid in Flex. I am not talking about the selectedItem or any particular record of dataProvider of datagrid. What exactly I want to do is I am showing some files data (name, description etc.) on a datagrid, and the data of these files comes from an array which is the dataProvider of the datagrid. Now when these files are being uploaded one by one to the server (using a webservice), I want to show a ProgressBar on, say, "Progress" column in the datagrid. How can I access this column for a particular row in datagrid i.e. current file being uploaded.
Tried col.setStyle('percentWidth',20) //doesn't work col.setStyle('percentWidth',0.2)//doesn't work && col.percentWidth //doesnt compile Where col is one of the columns in a datagrid.
I wanted to ask if there is a possibility to have both strings and radiobuttons in one column depending on the value of another column perhaps|column1 | column 2 | |r | radiobutton||s | string |If there is an r in column 1 in column2 should appear a radiobutton, otherwise column 2 just shows a string.
I have an array like the following one public var sal:Array=[ {empNo:1001, sal:1000, exp:400}, {empNo:1002, sal:3000, exp:240}, {empNo:1003, sal:1000, exp:452}, {empNo:1004, sal:5000, exp:348}, ...... {empNo:1550, sal:2000, exp:330}, ];
I need to show data using a 3 row flex data grid where the first row will display empNo, the second row will display corresponding salary(field sal), and the third row will display Expenditure (field exp).
I have a column in a data grid that has the values of "Monday", "Tuesday" etc, as varchars, and I wanted to know, how do i sort the column to be in the correct order. Doing a normal sort doesnt work obviously, as the days are not alphabetically ordered naturally (Wed after Thurs). I am assuming some sort of itemrenderer, but anyone got a snippet of code to illustrate how this would work?
Is it possible to call the function by using the datagrid column item?I want to call the function while the user click the particular column item in the datagrid?