0

ASPxGridView使用事件OnFocusedRowChanged过滤来自屏幕上其他组件的数据是很常见的。

问题是,当对表进行排序时,该属性FocusedRowIndex是通过更改而保留的KeyValue,因此会丢失我们使用的参数过滤器。

如何避免这个问题?

4

1 回答 1

0

ASPxGridView排序后,将运行回调

为避免此问题,只需AfterPerformCallback使用以下代码处理服务器端事件:

int rowIndex = (sender as ASPxGridView).FindVisibleIndexByKeyValue(keyValue);
(sender as ASPxGridView).FocusedRowIndex = (rowIndex == ASPxGridView.InvalidRowIndex) ? -1 : rowIndex;

我将解释:将KeyValue用于过滤屏幕上其他组件数据的值保留SessionASPxHiddenField.

如果keyValue未找到 的值,我们将其设置FocusedRowIndex为 -1(使该行不聚焦),否则我们始终保持相同的keyValue聚焦。

于 2013-08-09T17:47:35.467 回答