解决Flex DataGrid控件中 showHeader=false时 rowCount非正常显示的问题!

   问题描述:

 

   DataGrid是Flex中一个非常不错的数据表格展现控件,不过近期在一个具体应用中惊无意中发现了它的一个小Bug。

 

   showHeader=true时,rowCount属性无可厚非,设置n,即显示n行数据。

 

   但倘若想不显示标题行(showHeader=false)时,问题就来了,这时设置的rowCount=n时,会显示为n+1行!!!

 

   针对这点,本人也在网上进行了考证,原来DataGrid的内码,默认把Header也算作一行,因此在使用rowCount相关属性时,会依此计

 

算;然而,当showHeader=false时,如果依旧以此逻辑计算,自然会多算出一行。

 

   原来如此,这可难不倒咱哥们,既然知道了原理,就能见招拆招了,自然想到了把rowCount设置为n-1这条毒计!看看效果,果然可行!

 

   就在沾沾自喜之时,却又发现了另一个问题!

 

   当只有一条数据之时,即n=1的时候,rowCount就会被设置为0,而对于DataGrid而言,rowCount=0即意味着将显示默认的8行数

 

据!天哪!这怎么能行。

 

   几经搜索,发现此实乃Flex的一个Bug!但好在,SDK 3.2+已经修正了此Bug。

 

   那么,在当前不改变SDK 下如何兵来将敌,水来土堰?

 

   其实也很简单,依旧设置 showHeader=true,不过把headerHeight=0,就万事OK了!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值