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

Tim*_*ver 2 c# asp.net sorting gridview

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

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

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

R.C*_*R.C 5

在这里,您需要使用该GridView.EnablePersistedSelection属性.将此属性设置为true.

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

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

  • 谢谢,这正是我所需要的。我预计解决方案会复杂得多。有人应该为我投票这个人。 (2认同)