|
In Class "mx.controls.gridclasses.DataGridRow" line 165:
cell._y = (__height-cell._height)/2;
Replace this line with:
if( cell.__height == undefined ){
cell._y = (__height-cell._height)/2;
}else{
cell._y = (__height-cell.__height)/2;
}
The problem was that the cell _y coordinate was based on _height not __height for components. If you added a ComboBox or NumericStepper into a Cell, they would resize incorrectly. The ComboBox would be ok until you opened it and then resized a column. Since the _height of the cell now contains the dropdown list, the _y of the cell is thrown off shooting the cell up aboout 50px. Using __height resolves the issue, but makes it essential to defined a getPreferredHeight function in your cell renderer class.
This makes writing cell renderers for DataGrid much easier allowing just about any component to be inserted, or better many controls in a form.