0

ご挨拶、

レコードの合計量が含まれているPagedCollectionViewを表示するDataGridがあります。

合計で約4220のレコードがあり、1ページに20のレコードが表示され、約210のページがあります。

今、私はこれを実装しようとしています:

人を検索するときは、その人をページの上部に表示し、ページをそのページの近くにあるものに設定します。

Linqで与えられた例を使用して、人をトップにすることができました。姓よりも高いアイテムを取得しますが、PagedCollectionviewはこれらの結果によって上書きされます。これは、指名手配者の前にすべてをスキップするため、ページ数が異なります。

基本的に私が欲しいのは、「Jan」と入力できる検索フィールドを用意することです。次に、ページをJanが存在する可能性のあるページ(+/- 1ページ下または上)にジャンプし、最初のレコードとして「Jan」を設定します。

4

1 に答える 1

0

私自身の答えを見つけました。

あまり良い方法ではありませんが、常に最初にメンバーの合計量がロードされているので、現在ロードされている量が最初にロードされた合計量よりも多いかどうかを確認するチェックを作成しました。

好き:

if (loadOperation.TotalEntityCount >= itemCount || !string.IsNullOrEmpty(FilterText))
{
    this.ItemCount = loadOperation.TotalEntityCount;
}
else
{
    if (!DeleteMember)
    {
        pageIndex = (int)((this.ItemCount - loadOperation.TotalEntityCount) / this.PageSize);
        RaisePropertyChanged("PageIndex");
    }
    else
    {
        DeleteMember = false;
        itemCount -= 1;
    }
}

メンバーの削除は、メンバーが削除されたときにページインデックスを設定しようとしないことを確認するためのものであり、したがってTotalEntityCountはitemcountより1少なくなります。

于 2011-01-20T11:55:33.533 に答える