0

我想根据表单的状态拒绝在数据网格中选择一行。如果表单具有更改数据的字段,我希望拒绝行选择。

是否有一个事件我可以捕获(在选择之前)并取消,还是我必须自己实现逻辑?

4

1 回答 1

0

您可以在您的 SelectionModel 上使用 SelectionChangeHandler(它为您提供一个已选择的对象,您可以取消选择它),或者您可以在您的 DataGrid 上使用 CellPreviewHandler(它为您提供一个被点击的行 - event.getContext() .getIndex() - 您可以在您的 SelectionModel 中取消选择它)。

选择取决于你想在事件之后做什么:你必须在你的 UI 中做一些明显的事情,这样用户就不会混淆为什么点击一行会选择它,而点击另一行却不会。例如,您可以在呈现 DataGrid 后立即更改不可选择行的背景颜色,然后在选择错误行时显示错误消息。

于 2012-07-30T06:05:09.443 回答