0

我想请您帮忙解决以下问题。

我有一个 SmartGwt ListGrid,其中有多行。这个 ListGrid 有一个 SelectionChangedHandler 工作得很好。

我在这个 ListGrid 中添加了一个特殊的列(ListGridField),基本上我想防止在单击时触发 selectionChangeEvent。

这个特殊的列有它自己的recordclickHandler。

我只想排除此列表单更改 ListGrid 中的选定记录。

在您的知识范围内有没有办法做到这一点?

提前致谢。

4

1 回答 1

1

由于行选择事件不会告诉您单击了哪个单元格,因此无法告诉您哪一列,我认为您需要使单元格可选,如果单元格位于排除列中,则忽略该事件。

myGrid.setCanSelectCells(true);

myGrid.addCellSelectionChangedHandler(new CellSelectionChangedHandler() {
  public void onCellSelectionChanged(CellSelectionChangedEvent event) {  
    CellSelection selection = countryGrid.getCellSelection();

    //use to determine if excluded column is clicked:
    int[][] selectedCells = selection.getSelectedCells();

    //use to get selected row: 
    ListGridRecord record = selection.getSelectedRecord();

    //etc...
  }
}  
于 2013-02-05T10:44:00.290 回答