如何将Dojox Datagrid行高设置为单行

时间:2009-07-24 14:42:14

标签: datagrid dojo row-height

我正在尝试将Dojox 1.3 Datagrid的高度修改为单行(如Excel)。当更多数据可用于单行时,当前功能是自动增加行的高度。

有没有简单的方法来实现这一目标?它似乎应该构建在数据网格的功能中,因为这是电子表格的默认行为。

感谢您的帮助

3 个答案:

答案 0 :(得分:1)

我想你可以。

以下是我一直在尝试的内容:
在.dojoxGridCellContent类中,添加:

空白:NOWRAP; 溢出:隐藏;

对于我的“Squeeze / Expand”函数,我使用一个小函数来动态更改类属性,然后重新绘制网格。

我坚信需要能够将行(在Excel和html中)压缩到1“行”高,以便于垂直视觉扫描(根据需要截断单元格内容)然后到能够再次展开它们以查看任何特定行上的单元格中的完整内容。

如果在任何给定单元格中有可变数量的文本,则手动调整列的宽度足以适合任何给定单元格中的所有可能文本是一个可怕的解决方案。对于生产力应用程序,非功能性空白区域是敌人。

我希望Dojo有一种方法来做这个有用的东西(也解决了常年的跨浏览器条件椭圆问题)。

答案 1 :(得分:1)

发现了一个黑客!

将其用作列格式化程序:

function(obj){
    return "<div style='height:15px;text-overflow:ellipsis'>"+obj+"</div>"
}

这只是一个黑客,我看到行选择器有些问题。但无论如何,希望这能帮助你们。

答案 2 :(得分:0)

您无法设置高度,但可以调整宽度。如果你很清楚你的单元通常需要多宽才能将字符串放在一行上,你可以在&lt;中设置它。 th>元素,以最大化适合一行的行数。

<table  //dojo grid properties>
    <thead>
        <tr>
            <th width="90px" field="fieldName" ...>
                Field Name
            </th>
            ...
        </tr>
    </thead>
</table>

希望这有帮助。