2012-09-08 48 views
0

排序的GridView我尝试使用下面的方法来排序在Visual Basic中一个GridView,但是代码的第二行(DIM DV的数据视图......)抛出一个NullReferenceException。当我调试的代码,并通过它一步,我可以看到,DataTable的DT具有“无”的值,它实例化后。任何帮助将不胜感激。在Visual Basic

 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() 

回答

0

回传后的任何Web数据绑定,控制像GridView的数据源是没有(在C#中为空)。请注意,HTTP是无状态的,所有在页面生命周期中创建的对象将在页面呈现后立即销毁。

因此,解决办法很简单,用正确的ORDER BY再次选择DataSource

+0

由于数据源是一个SQL datatbase一个电话,这是否意味着我必须再次重新查询数据库? – NealR

+0

是的,这是正确的。 –