Autor Wątek: ograniczenia datagridview  (Przeczytany 2985 razy)

Offline tiago

  • Użytkownik

# Czerwiec 04, 2011, 17:04:57
Witam!

Polecono mi tu na forum datagridview. Pojawia się problem. Program mój będzie operował na wielu rekordach (kilka może kilkanaście tysięcy). Przy teście okazało się, że datagridview ma ograniczoną ilość wierszy. Nie wiem czy to wynika z ograniczeń kolekcji czy z budowy samego komponentu (to mi się wydaje bardziej prawdopodobne).  Da się to jakoś obejść?

Offline Mr. Spam

  • Miłośnik przetworów mięsnych


Offline tiago

  • Użytkownik

# Czerwiec 04, 2011, 19:39:44
Czyli sugerujesz, że mam napisać to od początku?
Troche nie naturalne mi się wydaje. Zobaczę jak to w praktyce się będzie miało.
« Ostatnia zmiana: Czerwiec 04, 2011, 19:46:58 wysłana przez tiago »

Offline Xirdus

  • Redaktor

# Czerwiec 04, 2011, 19:47:15
Tylko operacje dodawania i usuwania elementów i podobne. W artykule jest link do tutoriala na ten temat.

Offline tiago

  • Użytkownik

# Czerwiec 04, 2011, 19:56:49
A sortowanie będzie śmigać?

Offline Xirdus

  • Redaktor

# Czerwiec 04, 2011, 20:01:16
W Google hasło "datagridview virtual mode sort" jest nawet w podpowiedziach wyszukiwania...

Offline tiago

  • Użytkownik

# Czerwiec 04, 2011, 20:09:05
Po wynikach sądzę, że inaczej jak samemu się nie da.

Powiedz mi z czego to ograniczenie wynika?

// sklejka postów -Xirdus
« Ostatnia zmiana: Czerwiec 04, 2011, 20:21:50 wysłana przez Xirdus »

Offline Xirdus

  • Redaktor

# Czerwiec 04, 2011, 20:24:15
Nie mam pojęcia, nie znam się na C# ani Windows Forms. Ale prawdopodobnie jest to z powodu ograniczenia wielkości stosu bądź też pojedynczego zaalokowanego bloku pamięci.

Offline Dab

  • Redaktor
    • blog

# Czerwiec 05, 2011, 01:27:21
Pytanie brzmi: po co kilkanaście tysięcy wierszy wyświetlanych naraz?

Offline tiago

  • Użytkownik

# Czerwiec 05, 2011, 09:48:25
Program będzie służył do łatwego zarządzania zbiorem plików muzycznych. Dedykowany jest dla mojego kumpla, który ma naprawdę dużo tego.

Offline kultys

  • Użytkownik
    • Tekno Bowling Master

# Czerwiec 05, 2011, 10:50:34
To powiedz mi czy użyłeś kiedykolwiek wyświetlania paru tysięcy rekordów w jednym polu ? Próbowałeś to przejrzeć ? To będzie cholernie nie wydajne. Jak już masz potrzebę taką to zrób dwa przyciski (lewo, prawo) i wyświetlaj po np. 1000 (1-1000,1001-2000). Sortowanie zawsze możesz zrobić w zapytaniu.

Offline Krzysiek K.

  • Redaktor
    • DevKK.net

# Czerwiec 06, 2011, 13:48:01
Program będzie służył do łatwego zarządzania zbiorem plików muzycznych. Dedykowany jest dla mojego kumpla, który ma naprawdę dużo tego.
Jeśli się nie mylę, to w sieci jest multum darmowych programów służących do dokładnie tego. Po co robić kolejny?

Offline tiago

  • Użytkownik

# Czerwiec 17, 2011, 07:17:52
Racja. Mam jednak powody :)


Co do samego problemu. Szkoda że wcześniej tego nie zauważyłem. Błąd wynika z tego, że aplikacja przez 60s była zawieszona (jak to przy dużych pętlach bywa). Wystarczyło dodać przerwanie pętli i obsługę zdarzeń i śmiga :)  Dzięki za pomoc!


@EDIT: Teraz mam zagadkę. Siedzę i się zastanawiam. Sprawdzałem na 3 komputerach. Ze spokojem ładowałem na nich powiedzmy 7tys. plików. A u kumpla wywala się, jak mówi po 1000 (dokładnie ma błąd wstylu przekroczył indeks tablicy). Sprawdzał na 2 swoich. Od czego to zależy? (bez virtualmoda tego datagrida mam)
« Ostatnia zmiana: Czerwiec 17, 2011, 18:24:01 wysłana przez tiago »

Offline Xirdus

  • Redaktor

# Czerwiec 17, 2011, 22:31:18
Wersja .NET Framework, dostępna pamięć, faza księżyca?

Offline ArekBal

  • Użytkownik

# Czerwiec 17, 2011, 23:53:46
pokaż kod ładowania...
Kontener, co w niego ładujesz i jak.