DeferredContentProvider的替代方法,用于支持使用SWT.VIRTUAL在表中进行过滤
在我的项目中,我有一个TableViewer
,需要显示超过100,000个项目并过滤它们。 如果没有SWT.VIRTUAL
,表格需要多秒才能显示。 但是,在尝试使用SWT.VIRTUAL
时,我SWT.VIRTUAL
以下问题:
正如人们通常所做的那样实现ILazyContentProvider
是有问题的,因为它与TableViewer
通常的过滤机制不兼容,因此我必须自己实现整个过滤机制。
在我的搜索中,我找到了DeferredContentProvider
来解决这个问题。 但DeferredContentProvider
仍然有许多已知的错误 ,其中一个( 146799 )肯定已经影响了我,所以我不能使用它。
我现在的问题是:我应该看看有什么好的选择,还是我自己必须以自己处理过滤的方式实现ILazyContentProvider
? 如果是这样,我有什么机会不遇到DeferredContentProvider
的实现者遇到的关于刷新问题的相同问题? 有没有人有类似的经历?