TreeViewer刷新/更新特定的TreeColumn

时间:2012-09-26 11:32:35

标签: java eclipse swt jface treeviewer

有没有办法只更新/更新TreeColumn中的特定TreeViewer? 我目前在我的TreeViewer中有一个功能,即隐藏/显示TreeColumn。隐藏列时,该列的值可能与我的模型不同步。这就是为什么当我再次启用它时我需要刷新到Column并且获取列的单元格值的操作非常昂贵。

我有一个解决方案,但我希望有一个更好的解决方案(可能是开箱即用的东西)。我设法将LabelProvider定义为包含TreeViewerCustomTreeView extends ViewPart)的类中的内部类。 CustomTreeView将使用update(TreeColumn)方法:

  1. TreeColumn存储在内联LabelProvider类的私有字段中。
  2. 致电TreeViewer.refresh()
  3. 将内部TreeColumn的{​​{1}}字段设置为null。
  4. LabelProvider的{​​{1}}方法会检查update(ViewerCell cell)是否属于LabelProvider中存储的ViewerCell,并在需要时进行刷新。

    你怎么看? 提前谢谢。

0 个答案:

没有答案