查看文章
 
如何让DataGrid的宽度自动根据内容调整?
2009-08-18 15:48

问:如何让DataGrid的宽度自动根据内容调整?

让列宽度根据内容宽度自动调整,不会出现字符截断。
默认的列宽度是100,如果字符串过长,那么后面的就会显示不出来,除非把列拉宽。

还有一个问题,最后一列的宽度总是会自动调整,有办法让最后一列的宽度固定吗?

答:flex本身没有你想要的方法,你在column加上wordWarp="true"可以让该列的字符超出宽度时换行显示。如果在datagrid上加variableRowHeight="true",则所有的列都会换行。

虽然flex没有提供自动适应宽度的方法,你也可以自己实现,只不过费点周折,需要在creationComplete的时候动态的改变width属性。

不过从需求上来说,单元格自适应宽度的需求要小于换行。我曾经开发一个系统的时候,表格的字段太多,导致在firefox里不会自动换行,把表格撑的乱七八糟,客户骚扰了我好久,最后只能用js换行(firefox不支持单元格的自动换行)

cimmicola,十分感谢!

这个问题我找了两天了,FLEX的确没有这个功能。在官网的论坛上也没找到解决这个问题的办法。

在creationComplete的时候动态的改变width属性,这个办法我也想到过。不过要得到每一单元格里字符的长度,再得到最长的,
再根据最长字符的字符个数转换成像素再设置那成一列的宽度,或是继承DataGridColumn,自己写个类再用,也不一定理想。


类别:Flex Datagrid||添加到搜藏 |分享到i贴吧|浏览(8197)|评论 (0)
 
 
最近读者:
 
网友评论:
发表评论:
姓 名:
网址或邮箱: (选填)
内 容:
     

   
帮助中心 | 空间客服 | 投诉中心 | 空间协议
©2012 Baidu