2011-01-25 41 views
20

podany w panelu układu tabeli z 2 kolumnami i wieloma wierszami, jak mogę dołączyć pasek przewijania do niego, ponieważ czasami jest on znacznie większy niż rozmiar formularza.Pasek przewijania panelu panelu tabeli

Dziękuję

Odpowiedz

38

TableLayoutPanel jest przykładem ScrollableControl. Dlatego możesz ustawić jego właściwość AutoScroll na True, a kontrolka automatycznie utworzy paski przewijania, gdy ich preferowany rozmiar przekroczy bieżący rozmiar. Zapewni to pożądany efekt przy minimalnym wysiłku.

Procedura

  1. Ustaw właściwość MaximumSize korzystnej maksymalnej wielkości lub można zadokować TableLayoutPanel w swojej formie.
  2. Ustawia wartość AutoScroll właściwości TableLayoutPanel na wartość true.



FYI:
Panel, ToolStrip, FlowLayoutPanel, SplitterPanel, TableLayoutPanel, tabpage i ToolStripContentPanel wszystko dziedziczyć klasę ScrollableControl więc ta odpowiedź odnosi się do nich dobrze.

+0

nie działa aż ustawić właściwość AutoScrollMinSize. – sendreams

+0

@sendreams: Czy możesz podać szczegóły dotyczące konkretnego przypadku, w którym doświadczyłeś tego? Według mojej najlepszej wiedzy, wystarczy ustawić "MaximumSize" i włączyć "AutoScroll" tak, jak to wyjaśniono powyżej. –

0

Na skróty:

tableLayoutPanel1.MaximumSize = new Size(tableLayoutPanel1.Width, tableLayoutPanel1.Height); 
tableLayoutPanel1.AutoScroll = true; 
Powiązane problemy