0

我正在尝试使用以下方法在 Visual Basic 中对 gridview 进行排序,但是第二行代码(Dim dv as DataView ...)会引发 NullReferenceException。当我调试代码并单步执行时,我可以看到 DataTable dt 在实例化后的值为“Nothing”。任何帮助将不胜感激。

        Dim dt As DataTable = grdExpProd.DataSource
        Dim dv As DataView = dt.DefaultView

        If (blnExTraining) Then
            dv.Sort = "ExpirationDate DESC"
        Else
            dv.Sort = "ExpirationDate ASC"
        End If

        grdExpProd.DataSource = dv
        grdExpProd.DataBind()
4

1 回答 1

0

回发后,任何 Web-Databound-Control 的 DataSource 都GridView为 Nothing(C# 中为 null)。请注意,HTTP 是无状态的,在页面生命周期中创建的所有对象将在页面呈现后立即销毁。

所以解决方法很简单,DataSource再次选择正确的ORDER BY

于 2012-09-08T23:31:45.710 回答