2009-04-24 14 views
5

Podczas wydawania DataGridView.Scroll można sprawdzić, czy był to koniec przewijania (podczas przeciągania paska przewijania myszką, prawdopodobnie po zwolnieniu przycisku myszy).Zdarzenie przewijania DataGridView (i ScrollEventType.EndScroll)

Problem polega na tym, że nigdy się to nie zdarza. e.Type nigdy nie jest ScrollEventType.EndScroll

Co jest nie tak z tym? Jak mogę zrobić coś tylko po zakończeniu przewijania?

private void dataGridView_Scroll(object sender, ScrollEventArgs e) 
    { 
     if (e.Type == ScrollEventType.EndScroll) 
     { 
      // ...  
     } 
    } 

Odpowiedz

5

Wygląda na to, że to wydarzenie jest po prostu błędne.

Możesz zatrzasnąć na prywatnych obiektach paska przewijania DGV (poprzez odbicie) i obsłużyć ich zdarzenia, gdzie ScrollEventType.EndScroll pojawia się zgodnie z oczekiwaniami.

Przeczytaj ten link do tego this, aby dowiedzieć się, jak to zrobić.

Powiązane problemy