3

ページングが有効になっているデータグリッドがあります。フィルタリング条件に基づいてデータグリッドに結果を表示しています。データをフィルタリングしたところ、2 ページになりました。2ページ目に行ったとき。結果を絞り込むために、検索機能をもう一度実行しています。次に、「無効な CurrentPageIndex 値です。それは >= 0 かつ < PageCount+datagrid ページングである必要があります」のようなエラーが表示されます。この問題を解決するには?前もって感謝します

4

5 に答える 5

5

特定の変更を行った場合、ページ 1 にリセットする必要があります。これには、フィルタリングの変更が含まれます。ほとんどの場合、グリッドで使用できる行数を変更するたびに、1 ページに戻ります。

于 2009-03-20T04:03:22.547 に答える
1

ページングが有効になっているデータグリッドがあります。フィルタリング条件に基づいてデータグリッドに結果を表示しています。データをフィルタリングしたところ、2 ページになりました。2 ページ目に移動して、結果を絞り込むためにもう一度検索機能を実行している場合。次に、次のようなエラーが表示されます

「無効な CurrentPageIndex 値です。>= 0 かつ < PageCount+datagrid ページングである必要があります」

2 回目の検索では、前の検索よりもページ数が少なくなると確信しています。この問題を解決するには?エラー表示:

CurrentPageIndex 値。>= 0 かつ < PageCount である必要があります。

問題を解決しました

protected void btnSearchLibrary_Click(object sender, EventArgs e)
{
    if(!String.IsNullOrEmpty(txtSearchLibraryNo.Text.Trim()))
    oBookReceiptDTO.LibraryCardNo = txtSearchLibraryNo.Text.Trim();
    gvBooksReceiptList.CurrentPageIndex = 0;
    FillGridViewBookReceiptList(oBookReceiptDTO);
}

注:gvBooksReceiptList.CurrentPageIndex = 0;これは、問題を解決するために使用した行です。

于 2012-03-22T08:32:44.230 に答える
0

もう 1 つの提案は、PageCount が変更されて HttpException が発生した場合にのみ CurrentPageIndex をリセットすることです。コード フラグメントは、Les Smith の例に基づいています。

    Try
        dataGrid1.DataBind()
    Catch
        ' We possibly don't have the correct PageCount.
        dataGrid1.CurrentPageIndex = 0
        dataGrid1.DataBind()
    End Try
于 2010-11-05T12:00:04.313 に答える