Gridview自动选择排序后的第一行

时间:2013-12-12 21:54:21

标签: c# asp.net sorting gridview

我正在使用objectdatasource在asp.net Web表单中处理主/详细gridview和detailsview。详细信息视图显示有关gridview中所选行的额外信息。当我对网格进行排序时,我希望在排序发生之前,当前选定的行在排序完成后保留在详细信息视图中。相反,每当我排序时,gridview都会自动选择新的第一行。

我发现了这个问题的部分解决方案。如果我设置WhateverGridview.SelectedIndex = -1 onsort并且值变为null。这使得它在排序后取消选择任何行。这会将详细信息视图留空。但是,我想要做的是保持选定的行不会使它无效。

那么,是否有人有一个很好的方法来保留所选值或阻止在排序事件触发后显示详细信息视图。

1 个答案:

答案 0 :(得分:5)

您需要使用GridView.EnablePersistedSelection属性。将此属性设置为true

将此属性设置为true意味着GridView将确保行的选择基于数据键值。

默认情况下,GridView根据索引进行行选择。这就是为什么在排序时,gridview根据索引选择行并丢失实际选定行的原因。