【问题标题】:How to sort a gridview once a radio button is selected选择单选按钮后如何对网格视图进行排序
【发布时间】:2010-03-25 05:41:23
【问题描述】:

我正在尝试在选择单选按钮后立即对 gridview 中的记录进行排序。我的方法是使用数据视图,但由于数据集变量无法在往返服务器的过程中幸存下来,我不知道如何实现这一点。请帮忙!

 Public Sub GetCustomers()
        db.RunProcedure("usp_customers_get_all")
        db.doSort(radList.SelectedValue)
        gvCustomers.DataSource = db.MyView
    End Sub

Protected Sub radList_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles radList.SelectedIndexChanged
        If radList.SelectedValue = 0 Then
            db.doSort(0)
            gvCustomers.DataSource = db.MyView
        End If
        If radList.SelectedValue = 1 Then
            db.doSort(1)
            gvCustomers.DataSource = db.MyView
        End If
    End Sub

 Public Sub doSort(ByVal strIn As Integer)
        If strIn = 0 Then
            MyView.Sort = "lastname, firstname"
        Else
            MyView.Sort = "username"
        End If
    End Sub
    Public Sub RunProcedure(ByVal strName As String)
        Dim objConnection As New SqlConnection(mstrConnection)
        Dim mdbDataAdapter As New SqlDataAdapter(strName, objConnection)
        Try
            mdbDataAdapter.SelectCommand.CommandType = CommandType.StoredProcedure
            Me.mDataset.Clear()
            mdbDataAdapter.Fill(mDataset, "tblCustomers")
            MyView.Table = mDataset.Tables("tblCustomers")
        Catch ex As Exception
            Throw New Exception("stored procedure is " & strName.ToString & " error is " & ex.Message)
        End Try
    End Sub

【问题讨论】:

    标签: asp.net sql vb.net


    【解决方案1】:

    您可以将数据集存储在以下位置之一,然后在回发发生时从那里再次加载它。我在公司的 Intranet 上做了很多这样的工作。

    1. 会话变量
    2. 视图状态
    3. 查询字符串
    4. 缓存

    我真的无法提供更多帮助,因为您没有具体说明这是在 Ajax 中完成还是进行完整回发等。如果您提供更多信息,我很乐意为您提供帮助。

    【讨论】:

    • 或从数据库中再次加载数据集。选择内存与性能
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-01-23
    • 2015-04-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多