songtable是我在页面显示的时候读取数据库后填充的数据表
view是我默认的视图
        ds = New DataSet
        adp.Fill(ds, "SongDate")
        view = New DataView
        Songtable = ds.Tables("SongDate")
        view = Songtable.DefaultView
'地区排序
 Sub OrderAreaName(ByVal sender As System.Object, ByVal e As System.EventArgs)
            If Session("OrderType") = 1 Then
            Dim diqu As New DataView
            diqu = Songtable.DefaultView
            diqu.Sort = "AreaName desc"
            Repeater1.DataSource = diqu
            Repeater1.DataBind()
            Session("OrderType") = 0
        Else
            Repeater1.DataSource = view
            Repeater1.DataBind()
            Session("OrderType") = 1
        End If
    End Sub
现在我在排序的时候在执行到ELSE后老提示我的没有绑定到数据,默认的

解决方案 »

  1.   

    page _load里的
     ViewState["SortOrder"]="GRPID";
     ViewState["OrderDire"]="ASC";
    //升降序
            private void DataGrid1_SortCommand(object source, System.Web.UI.WebControls.DataGridSortCommandEventArgs e)
            {
                string vortExp=e.SortExpression;
                if(ViewState["SortOrder"].ToString()==vortExp)
                {
                    if((string)ViewState["OrderDire"]=="Desc")
                    {
                        ViewState["OrderDire"]="ASC";
                    }
                    else
                    {
                        ViewState["OrderDire"]="Desc";
                    }
                }
                else
                {
                    ViewState["SortOrder"]=e.SortExpression ;
                }
                this.linkdb ();
            }
      

  2.   

    我的是在repeater中自己写的,提取dataview来写的~不一样啊,