Witam,
mam problem z winforms
mam utworzone kilka widgetów, m. in. panele, labele w nich i buttony
wszystko ładnie się wyświetla, ale podczas przeładowania czy minimalizowania są widoczne "lagi". Widgety potrzebują około 1 sekundy, żeby się wczytać.
Wie ktoś jak naprawić / zoptymalizować ich działanie?
c# widget lag
- Rejestracja: dni
- Ostatnio: dni
- Postów: 5
- Rejestracja: dni
- Ostatnio: dni
To nie jest normalne zachowanie.
Albo masz tych widgetów milijon, albo komputer sprzed 20 lat (bo na takim sprzed 10 nic takiego się nie dzieje), albo coś masz w kodzie co zamula ci program.
edit: a w ogóle ten problem jest w twojej aplikacji czy w Visual Studio? jaka wersja, jaki komp? bardzo nieprecyzyjnie opisałeś.
- Rejestracja: dni
- Ostatnio: dni
- Postów: 1065
W WinForms są kontrolki A nie widgety.
Dodajesz te kontrolki w jakimś zdarzeniu? Przywrócenie okna na pewno musi przeladowac te kontrolki?
- Rejestracja: dni
- Ostatnio: dni
widgety tworzą się dynamicznie w kodzie, jest ich 14, ale przy mniejszej ilości też jest problem z wczytywaniem, gdy zminimalizuje i powrócę
No to problem masz w kodzie. Szklana kula oddana do polerki :)
- Rejestracja: dni
- Ostatnio: dni
- Lokalizacja: Poznań
- Postów: 20
Sprawdź czy masz atrybut DoubleBuffored w formatce ustawiony na true. Dzięki temu lepiej renderuje się całość i nie ma efektu migania
- Rejestracja: dni
- Ostatnio: dni
Janeczek napisał(a):
https://pastebin.com/zTd58gDJ tak wygląda tworzenie kontrolek
Odpowiadaj w postach, nie komentarzach.
Kiedy to tworzenie się odbywa? Czy cokolwiek się dzieje w kodzie przy przywracaniu aplikacji z minimalizacji? Dlaczego cokolwiek ci się wtedy przeładowuje - może tworzysz kontrolki na nowo?
- Rejestracja: dni
- Ostatnio: dni
- Postów: 5
Tworzenie odbywa się przy starcie aplikacji, oraz po naciśnięciu przycisku.
Nic się nie dzieje przy powrocie z minimalizacji. Nie tworze kontrolek na nowo, tworzą się one tylko raz na starcie, albo po naciśnięciu przycisku.
Kontrolki stworzone w designerze (nie w kodzie) także mają ten problem z ładowaniem.