在Eclipse(RCP)中查看数据矩阵

在Eclipse(RCP)中查看数据矩阵,eclipse,eclipse-plugin,eclipse-rcp,rcp,Eclipse,Eclipse Plugin,Eclipse Rcp,Rcp,这是我更新显示列表的TableViewer的方式: 公共作废视图(MyListClass列表){ ViewerSupport.bind( 这 新的可写列表(列表,controller.theClass()), BeanProperties.values(controller.theClass()、controller.strings()) ); } controller是一个类的实例,该类封装了我的粘合代码(这两个清单中的类不同;就像controller.theClass())字符串()是一个

这是我更新显示列表的TableViewer的方式:

公共作废视图(MyListClass列表){
ViewerSupport.bind(
这
新的可写列表(列表,controller.theClass()),
BeanProperties.values(controller.theClass()、controller.strings())
);
}
controller
是一个类的实例,该类封装了我的粘合代码(这两个清单中的类不同;就像
controller.theClass()
)<代码>字符串()是一个属性名称数组。MyListClass从
ArrayList
派生。那很好。但是,我想显示一个数据矩阵
MyMatrixClass
是一个
HashMap
。这就是我尝试过的:

private void视图(MyMatrixClass矩阵){
列(matrix.columns());
List lists=新的ArrayList(matrix.rows());
对于(MyEntityClass列表:matrix.children())
if(列出MyListClass的实例)
添加(新的可写列表((MyListClass)列表,controller.theClass());
WritableList[]alists=lists.toArray(新的WritableList[0]);
多重列表mlist=新多重列表(ALIST);
ViewerSupport.bind(
这
姆利斯特,
BeanProperties.value(controller.theClass(),“value”)
);
}
这不管用。我得到空参数弹出错误。(每个数据模型类都实现了
MyEntityClass
。由于这是我正在开发的一个专有程序,所以类名已经更改。)


长话短说,我如何使用
ViewerSupport
BeanProperties
TableViewer
中显示数据矩阵?

由于JFace table viewer是基于行的,您必须以基于行的方式提供矩阵。您必须创建矩阵行的集合,然后将此列表设置为查看器的输入。之后,您可以创建BeanProperties,显示所选行的列。

这就是我使用
多列表的原因。我想我可能能够将每一行作为
可写列表推入。显然,这不起作用。“多列表”
到底是什么意思?有一次我有一个类,
MyMatrixRow
,但我不知道如何有效地使用它。每行有任意数量的条目->任意数量的属性。那么,我如何避免编写大量的
getValue1
getValue2
,等等?遗憾的是,我不知道如何使用数据绑定解决您的问题。但是,您可以定义自己的内容和labelproviders,这可以利用您的数据模型—但是,在本例中,您负责在基础模型元素更改时更新显示。