我有表格字段作为模板。
对于此表字段,我使用注释创建了表单数据
@FormData(value = AbstractMyTableData.class, sdkCommand = FormData.SdkCommand.USE, defaultSubtypeSdkCommand = FormData.DefaultSubtypeSdkCommand.CREATE)
public abstract class MyTableField extends AbstractTableField<MyTableField.Table>
在 MyTableField.Table 中,我有n
列,所有列都显示在该字段的表单数据中,因此我可以添加如下行:
int rowNum = formData.addRow();
formData.setColumn_1(rowNumber, value);
....
formData.setColumn_n(rowNumber, value);
现在我想扩展我的表,而不是:
public class Table extends AbstractExtensibleTable {
我现在有
public class Table extends AbstractTreeTable {
它里面有两个新的列。我的问题是 AbstractMyTableData 里面仍然只有n
列而不是那两个。因此,当我创建新行时,addRow
我无法将这两个值设置为该行。
请帮忙。
额外的
我没有看到这AbstractTableFieldBeanData
不仅仅是随机的类名AbstractMyTableFieldData
,而是创建不同类型的表单数据。
现在我有了基于 bean 的表数据。
但我的问题仍然存在。即使在基于 bean 的新数据中,也只有 myTable 中的列,而不是 treeTable 中的列。
我的层次结构就像@Jmini 描述的那样。
AbstractTable
| (no columns defined as inner class)
|
\---AbstractTreeTable
| (2 columns defined as inner class: ParentKeyColumn and KeyColumn)
|
\---MyTableField.Table
(additional columns defined as inner class)
这MyTableField.Table
是里面的MyTableField
女巫是模板。
所以我的代码如下所示:
@FormData(sdkCommand = FormData.SdkCommand.CREATE, value = AbstractTableFieldBeanData.class, defaultSubtypeSdkCommand = FormData.DefaultSubtypeSdkCommand.CREATE)
public abstract class MyTableField extends
AbstractTableField<MyTableField.Table> {
....
@Order(10.0)
public class Table extends AbstractTreeTable {
在AbstractTreeTable
我没有像@Jmini 建议的任何注释。
我添加如下行:
MyTableFieldRowData row = formData.addRow();
row.setColumn1(value);
但里面MyTableFieldRowData
没有额外的行AbstractTreeTable
我错过了什么吗?