SlickGrid第一列已修复

时间:2011-11-16 12:30:37

标签: javascript slickgrid

是否可以修复SlickGrid的第一列?这样在水平滚动期间它总是可见的,比如标题行?

感谢您的帮助!

3 个答案:

答案 0 :(得分:12)

还有另一个论坛链接(现在找不到)导致我JLynch's fork。他保留了1.4.3标签及其用于冷冻柱和行的补丁,以及保持2.0头。以下是frozen rows and columns的两个示例。

在该示例中,作者使用了一些其他选项属性:

        ,topPanelHeight: 25
        ,frozenColumn: 2
        ,frozenRow: 5

希望这可以做到你想要的而不必在核心上进行过多的攻击!

答案 1 :(得分:5)

我认为您可以在活动.onViewportChanged()中制作下一步:

  1. 获取.getColumns()的列并存储在数组变量arrColumns中。
  2. 然后检测第一列。
  3. .getData()的数据存储在数组变量arrData
  4. 排序arrColumns将第一列放在开头。
  5. 使用arrColumns
  6. 设置新.setColumns()中的列
  7. 按照新arrData
  8. 的顺序重新组装arrColumns
  9. 致电.resizeCanvas()
  10. 交叉你的手指。 :d
  11. 很抱歉,但我找不到方法或选项,因为您可以按照自己的方式进行此操作。

    好吧,看看你对this的看法。它远非完美,但它是一个想法。如果方法scrollTo()是公开的,我会做得更好。

答案 2 :(得分:0)

我知道这并不完全符合您的需求,但您可以通过在选项对象中将forceFitColumns设置为true来完全避免水平滚动。

我认为这种行为对于屏幕非常小的用户来说是不受欢迎的。