1

我有两个 ADF 面表AB它们的 rowSelection属性设置为“ single”。Now the requirement is when one row is selected from A, it should clear out all selections from Band vice versa . 所以我已经selectionListeners在两个表上注册,并且在该方法中执行的代码正在为尚未选择的表执行以下操作:

tablenNotSelected.setSelectedRowKeys(null);

我在这里想念什么?

4

3 回答 3

2

您可能需要在表或周围的容器上设置部分触发器,以实际强制屏幕更新。

于 2013-01-23T16:34:38.730 回答
0

不要将选定的行键设置为空。而是使用getSelectedRowKeys().RemoveAll();API。

要刷新另一个表,请执行以下操作。

table_1_selectionListener() {
    RequestContext.getCurrentInstance().addPartialTarget(T2);
}

与表 2 侦听器类似

于 2013-03-09T04:56:40.197 回答
0
public void clearTableSelection(RichTable table) {
    table.getSelectedRowKeys().clear();
    RowKeySetAttributeChange rks = new RowKeySetAttributeChange(table.getClientId(), "selectedRowKeys", new RowKeySetImpl());
    RequestContext.getCurrentInstance().getChangeManager().addComponentChange(FacesContext.getCurrentInstance(),table, rks);
    AdfFacesContext.getCurrentInstance().addPartialTarget(table);
}
于 2020-05-11T09:50:10.453 回答