Сохранение выбранного элемента в задачах gridview - PullRequest
0 голосов
/ 10 июля 2009

Я пытаюсь сохранить выбранный элемент (ключ данных) в виде сетки, выбранной после любой операции, например, сортировки. У меня есть код, который держит его выделенным, но иногда последняя позиция элемента (индекс до его сортировки) остается выбранной вместе с новым индексом для выбранного элемента.

Каждый раз, когда он выбран, этот элемент привязывается к представлению сведений, которое я использую для считывания значения обратно. Вот код, любая помощь приветствуется! Спасибо

    Private Sub ProductsGridView_DataBound(ByVal sender As Object, ByVal e As System.EventArgs) Handles ProductsGridView.DataBound

    Dim Row As GridViewRow
    Dim SelectedValue As String = ProductDetailsView.DataKey("ProductID")
    If SelectedValue Is Nothing Then
        Return
    End If

    ' Determine if the selected row is visible and re-select it
    For Each Row In ProductsGridView.Rows
        Dim KeyValue As String = ProductsGridView.DataKeys(Row.RowIndex)("ProductID")
        If (KeyValue = SelectedValue) Then
            ProductsGridView.SelectedIndex = Row.RowIndex
        End If
    Next

End Sub

Почему при выборе нескольких элементов? Я знаю, что ProductID уникален для каждого продукта. Спасибо!

1 Ответ

0 голосов
/ 11 июля 2009

Харв был прав, спасибо за комментарий. У меня фактически остался какой-то глючный код, где я пытался сделать это в RowDataBound (который не работает, не делайте этого там), что вызывало проблему. Я думал, что удалил это, но это, я думаю, нет.

Спасибо, хорошая интуиция! (Опубликуйте это как ответ, и я отмечу это правильно, если вы хотите Harv)

...