2011-12-14 46 views
1

DataPagerを使用してListViewのデータをページしました。 ListViewがバインドされている場合、DataPagerは多くのページを表示しますが、すべてが正常であるように見えますが、別のページをクリックすると、ListViewは空で、ページは無くなってEmptyDataTemplateとなります。ASP.NET - ListViewとDataPagerが機能しない

私はGoogleで検索して1を試してみて、以下の両方の回避策が、彼らはありませんPageLoad上で、クリックイベントにバインドさListViewのデータ、私の場合は

protected void DatapPager_OnPreRender(object sender, EventArgs e) 
    { 
     try 
     { 
      listView.DataSource = ((DataSet)ViewState[VIEWSTATE_DATASET]).Tables[0]; 
      listView.DataBind(); 
     } 
     catch (System.Exception ex) 
     {    
     }    
     base.OnPreRender(e); 
    } 

    protected void listView_OnPagePropertiesChanged(object sender, EventArgs e) 
    { 
     try 
     { 
      listView.DataSource = ((DataSet)ViewState[VIEWSTATE_DATASET]).Tables[0]; 
      listView.DataBind(); 
     } 
     catch (System.Exception ex) 
     {    
     }    
    } 

を助けにはなりませんでした。

誰でも私を助けることができますか?どうもありがとうございます!

答えて

0

ViewState[ViewState[VIEWSTATE_DATASET]がどのように設定されているかは表示されません。私はポストバックにnullに、この取得されたリセットを推測していますし、あなたはおそらく、null値をキャストしようと、このライン上に上げてException嚥下されています

listView.DataSource = ((DataSet)ViewState[VIEWSTATE_DATASET]).Tables[0]; 
+0

'dataset'をListViewにバインドする前に、私はViewState [VIEWSTATE_DATASET] = datasetを割り当てました。 ViewState [VIEWSTATE_DATASET]!= nullと確信しています。 – Wayne

1

そのシンプルな、ちょうど「「ID」を取得してQUERY-

<asp:DataPager ID="DataPagerProducts" runat="server" QueryStringField="ID" PageSize="3"> 
          <Fields> 
           <asp:NextPreviousPagerField ShowFirstPageButton="True" ShowNextPageButton="False" /> 
           <asp:NumericPagerField /> 
           <asp:NextPreviousPagerField ShowLastPageButton="True" ShowPreviousPageButton="False" /> 
          </Fields> 
         </asp:DataPager> 

注:データベースからSTRING」は、今のような[QueryStringField="ID"]としてポケットベルコントロールのプロパティに設定してくださいウォーキングない場合、その後も[PagedControlID="ListView_Name"]設定します。

関連する問題