:: Forum >> Version 2 >>

dynamic height on a data grid not working for 2.5.1

More information on this topic is available in the documentation section: /general.bugs/2-5-1.html.

Under version 2.0.2 for the datagrid I was setting the grid height
using the command
grid.setStyle('height''80%');  and it work fine.

I loaded up the new 2.5.1 version and now it will only initially display 6 lines. If I set the height to a fix size, there is not problem. Is this not an option anymore with the newer version.

Stephen
Friday, January 11, 2008
Should be a bug - could you post (or send me) a full page html? I guess this is some kind of problem with nested tables layout.
Alex (ActiveWidgets)
Tuesday, January 15, 2008
Alex,

Here is the code that you requested

Stephen
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<
html>
<
head>
    <
title>Content Management</title>

    <
link href="../runtime/styles/xp/aw.css" rel="stylesheet" type="text/css"/>
    <
script language="JavaScript" src="../runtime/lib/aw.js"></script>

    
</
head>

<
body >

    <
script>

        var 
docGrid= new AW.UI.Grid;
        
docGrid.setId("FolderGrid");

        var 
myHeaders = ["","Col1""Col2""Col3""Col4","Col5","Col6","Col7"];

        var 
colWidth = new Array(5,10,30,10,10,10,15,10);      //set percentages for column width
        
docGrid.setColumnIndices([0,1,2,3,4,5,6,7]); // this hides the first column            
        
docGrid.setColumnCount(8);
        
docGrid.setRowCount(200);
        
docGrid.setHeaderText(myHeaders);

        
docGrid.setCellData(function(colrow){return "cell " col "." row});
        
docGrid.setCellTemplate(new AW.Templates.Radio0); 

        
docGrid.setStyle('height''80%');
        
docGrid.setStyle('width''100%');         
        
docGrid.setSelectionMode("single-row");   //set seletion for all the row
        
docGrid.onRowSelectedChanged = function(valuei){ 
            
this.getRowTemplate(i).refresh();
        }

    </
script>

  <
table width="100%" height="100%" border="0" align="center" cellpadding="2" cellspacing="3">
    <
tr>
      <
td>
          <
DIV id="myDiv" width="100%" height="100%"></DIV
        </
td>
    </
tr>    
  </
table>
  <
script>
       
document.getElementById("myDiv").innerHTML docGrid.toString();
    </
script>
  
</
body>
</
html
Stephen
Tuesday, January 15, 2008
Alex,

Ignore the variable "colWidth". For got to remove it. It does not do anything.

Stephen
Tuesday, January 15, 2008
This is indeed a bug in the grid initialization procedure - the total height value is incorrect. It will be corrected in the next bug-fix release. Please try the following code as a temporary workaround -

docGrid.paint = function(){
    var 
this.getScrollTemplate().element().offsetHeight;
    
this.setTimeout(function(){
        
this.setContentHeight(h"total");
        
this._virtualController.paint.call(this);
    });
}
 
Alex (ActiveWidgets)
Thursday, January 17, 2008
Alex,

Thanks, that fixed the problem in IE. I did notice that the grid does not display correctly in firefox when I use a percentage for the hieght. It does display correctly when I put in a actual number. Is this just a IE vs. Firefox thing?

Stephen
Thursday, January 17, 2008
You have to specify the DIV height in Firefox. The DIV element does not have width and height attributes so you have to specify width/height using style -

<DIV id="myDiv" style="width:100%;height:100%"></DIV>
Alex (ActiveWidgets)
Thursday, January 17, 2008
Fixed in AW 2.5.2.

http://www.activewidgets.com/general.bugs/2-5-2.html
Alex (ActiveWidgets)
Thursday, July 3, 2008

Post a reply:

Text:
Name:

Back to /general.bugs/2-5-1.html

Documentation:

Forum search