TableLayoutPanel in einem Panel



  • Ich habe ein TableLayoutPanel das in einem Panel liegt. Die Größe des Panel kann verändert werden, und die Höhe des TableLayoutPanel soll sich automatisch an die Höhe des Panel anpassen. Das TableLayoutPanel hat zwei Zeilen (jeweils 50%) und mehrere Spalten mit fester Pixelbreite. Wenn das Panel nicht breit genug ist, soll automatisch ein horizontaler Scrollbalken erscheinen.

    Beim Panel setze ich AutoScroll=true, und beim TableLayoutPanel setze ich AutoSize=true, beide Zeilen auf 50%, und alle Spalten auf feste Pixelbreite.

    Das funktioniert jetzt schon fast so wie es soll, nur ein Problem ist da noch:
    Die Höhe des TableLayoutPanel passt sich nicht automatisch an die Höhe des Panel an. Wie geht das?

    Gruß
    Michael

    P.S. Wenn ich beim TableLayoutPanel Dock=fill setze, dann passt sich zwar die Höhe automatisch an, aber dann verschwindet der horizontale Scrollbalken, den ich haben möchte.



  • Ich habe selber die Lösung gefunden. Beim TableLayoutPanel muss Dock=left gesetzt werden, dann tut es was es soll.

    Gruß
    Michael



  • Jetzt ist noch eine weitere Frage aufgetaucht:
    Wie kann ich beim TableLayoutPanel zur Laufzeit die Breite einer bestimmten Spalte verändern?



  • micha7 schrieb:

    Jetzt ist noch eine weitere Frage aufgetaucht:
    Wie kann ich beim TableLayoutPanel zur Laufzeit die Breite einer bestimmten Spalte verändern?

    In dem du den CellStyle der spalte bearbeitest.

    tableLayoutPanel1.ColumnStyles[X].Width = 1029172;
    


  • Danke!

    Michael


Log in to reply