eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programming[.net] wypełnianie grida danymi tylko wtedy gdy trzeba (lazy loading)
Ilość wypowiedzi w tym wątku: 5

  • 1. Data: 2010-02-24 13:40:49
    Temat: [.net] wypełnianie grida danymi tylko wtedy gdy trzeba (lazy loading)
    Od: razor <r...@g...com>

    Witam !

    Próbuję zrobić coś ala lazyloading w grubym kliencie.
    Mianowicie, używam sesji WCF aby pobierać dane kawałkami (po np.
    kilkanaście rekordów) -cały grid może mieć ich >100000.
    Używam DataGridView (lub GridControl z DevX).

    Jak zrobić aby dane zostały pobrane tylko dla wierszy które grid chce
    wyświetlić ? a przy przechodzeniu na kolejne wiersze dane byłyby
    doczytywane.

    Próbowałem przez implementację IList (i dostarczenie tego obiektu jako
    DataSource),
    lista ta zwraca całkowitą liczbę rekordów (np. 10000) ale dane
    rekordów wtedy kiedy są potrzebne. Niestety z gridem to nie działa,
    grid bierze z listy enumerator i odczytuje wszystkie rekordy (więc
    nici z doczytywania w tym miejscu danych do listy w momencie
    potrzeby).
    Na dodatek DataGridView jakoś nie reaguje na zmianę danych (np.
    dodanie ich) w DataSource, na którym bazuje. Na razie jedynym
    rozwiązaniem to było przypisanie nulla a potem znowu mojego obiektu z
    danymi (co skutkuje odświeżeniem całego grida i przy okazji
    wyzerowaniem zaznaczeń/pozycji itp.)

    Czy ktoś próbował zrobić takie opóźnione ładowanie danych lub ma jakiś
    pomysł jak to ugryźć ?

    pozdr,
    razor


  • 2. Data: 2010-02-24 13:44:49
    Temat: Re: [.net] wypełnianie grida danymi tylko wtedy gdy trzeba (lazy loading)
    Od: Jacek Czerwinski <...@...z.pl>

    razor pisze:
    > Witam !
    >
    > Próbuję zrobić coś ala lazyloading w grubym kliencie.
    > Mianowicie, używam sesji WCF aby pobierać dane kawałkami (po np.
    > kilkanaście rekordów) -cały grid może mieć ich >100000.
    > Używam DataGridView (lub GridControl z DevX).
    >
    > Jak zrobić aby dane zostały pobrane tylko dla wierszy które grid chce
    > wyświetlić ? a przy przechodzeniu na kolejne wiersze dane byłyby
    > doczytywane.


    na większosci gridów to się nazywa tryb wirtualny (ale NET-owego nie znam)


  • 3. Data: 2010-02-24 17:08:22
    Temat: Re: wypełnianie grida danymi tylko wtedy gdy trzeba (lazy loading)
    Od: razor <l...@g...com>

    On 24 Lut, 14:44, Jacek Czerwinski <x...@...z.pl> wrote:
    > razor pisze:
    >
    > > Witam !
    >
    > > Pr buj zrobi co ala lazyloading w grubym kliencie.
    > > Mianowicie, u ywam sesji WCF aby pobiera dane kawa kami (po np.
    > > kilkana cie rekord w) -ca y grid mo e mie ich >100000.
    > > U ywam DataGridView (lub GridControl z DevX).
    >
    > > Jak zrobi aby dane zosta y pobrane tylko dla wierszy kt re grid chce
    > > wy wietli ? a przy przechodzeniu na kolejne wiersze dane by yby
    > > doczytywane.
    >
    > na wi kszosci grid w to si nazywa tryb wirtualny (ale NET-owego nie znam)


    ha, dokładnie to jest to i nawet zadziałało :)
    Jakoś wcześniej zawsze omijałem opis właściwości VirtualMode,
    kojarzyło mi się to jedynie z właściwościami design-time.


    pozdr,
    razor


  • 4. Data: 2010-02-24 17:09:27
    Temat: Re: wypełnianie grida danymi tylko wtedy gdy trzeba (lazy loading)
    Od: razor <l...@g...com>

    On 24 Lut, 14:44, Jacek Czerwinski <x...@...z.pl> wrote:
    > razor pisze:
    >
    > > Witam !
    >
    > > Pr buj zrobi co ala lazyloading w grubym kliencie.
    > > Mianowicie, u ywam sesji WCF aby pobiera dane kawa kami (po np.
    > > kilkana cie rekord w) -ca y grid mo e mie ich >100000.
    > > U ywam DataGridView (lub GridControl z DevX).
    >
    > > Jak zrobi aby dane zosta y pobrane tylko dla wierszy kt re grid chce
    > > wy wietli ? a przy przechodzeniu na kolejne wiersze dane by yby
    > > doczytywane.
    >
    > na wi kszosci grid w to si nazywa tryb wirtualny (ale NET-owego nie znam)

    Dokładnie ! to jest to :) i nawet działa.
    Nigdy nie spojarzałem na opis właściwości VirtualMode, kojarzyła mi
    się jedynie z właściwościami design-time.

    pozdr,
    razor


  • 5. Data: 2010-02-24 17:09:34
    Temat: Re: wypełnianie grida danymi tylko wtedy gdy trzeba (lazy loading)
    Od: razor <l...@g...com>

    On 24 Lut, 14:44, Jacek Czerwinski <x...@...z.pl> wrote:
    > razor pisze:
    >
    > > Witam !
    >
    > > Pr buj zrobi co ala lazyloading w grubym kliencie.
    > > Mianowicie, u ywam sesji WCF aby pobiera dane kawa kami (po np.
    > > kilkana cie rekord w) -ca y grid mo e mie ich >100000.
    > > U ywam DataGridView (lub GridControl z DevX).
    >
    > > Jak zrobi aby dane zosta y pobrane tylko dla wierszy kt re grid chce
    > > wy wietli ? a przy przechodzeniu na kolejne wiersze dane by yby
    > > doczytywane.
    >
    > na wi kszosci grid w to si nazywa tryb wirtualny (ale NET-owego nie znam)


    Dokładnie ! to jest to :) i nawet działa.
    Nigdy nie spojarzałem na opis właściwości VirtualMode, kojarzyła mi
    się jedynie z właściwościami design-time.

    pozdr,
    razor

strony : [ 1 ]


Szukaj w grupach

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: