DataGridView in der Mitte des WinForms-Formulars strecken? - c #, winforms, Layout

Ich habe ein WinForm-Formular, das über zwei DataGridView-Steuerelemente verfügt, die auf der rechten Seite des Formulars übereinander gestapelt sind.

Ich möchte eine Art, sie so einzustellen, dass wenn icherweitern Sie die Form, sie erweitern sie in der Höhe, sowie in der Breite. Ich habe es in der Breite geschafft, indem ich sie an der linken und rechten Seite verankerte und die obere nach oben und die untere nach unten verankerte. Aber von hier aus bin ich nicht sicher, wie ich sie dazu bringen kann, den Platz in der Mitte zu nutzen, der erscheint, wenn das Formular maximiert ... Vielleicht wird ein Bild meine Bedeutung klarer machen:

Normale Größe: Normale Größe

Maximiert; Ich möchte, dass sich die Gitter ausdehnen, um die volle Höhe der Form zu erreichen zwischen den beiden wie die roten Pfeile zeigen: Maximiertes Formular mit Annotation

Wenn diese Frage offensichtlich ist, entschuldige ich mich und kann nur sagen, dass ich nicht wirklich wusste, wie ich es richtig formulieren sollte, und dass ich die Suche auf Google nicht hilfreich fand!

Antworten:

2 für die Antwort № 1

Sie haben zwei Möglichkeiten:

  • TableLayoutPanel oder
  • SplitContainer

Mit der ersten Option können Sie eine Tabelle mit vielen Spalten und / oder Zeilen mit verschiedenen Größenoptionen erstellen absolute und percent zu autosize. Dies ist sehr leistungsfähig für das Layout; aber in anderer Hinsicht TLPs sind etwas eingeschränkt als die "Zellen" sind nur virtuell..

EIN SplitContainer Angebote nur zwei Scheiben, aber können Sie jeden mit all den Dingen behandeln, die Sie tun können, um eine container: Fügen Sie ein oder mehrere Steuerelemente hinzu, verankern oder verankern Sie sie, geben Sie jedem Bereich eine Hintergrundfarbe und verwenden Sie dessen Ereignismodell.

Wenn Sie also nur zwei gleich große Steuerelemente benötigen, die sich an die Größe des Formulars anpassen, wie Sie es in der Frage gezeigt haben, a SplitContainer ist vielleicht die bessere Option.

Setze den Splitter fest und verkleinere ihn, Anker das SplitContainer zu alle Seiten und fallen lassen DGVs in ihre Scheiben und Dock Sie zu Fill.

Sie können den Splitter auch beweglich machen, damit der Benutzer die Größe der Fenster ändern kann. Wenn Sie das tun, machen Sie die Splitterbreite größer.

Stellen Sie auch sicher, dass die FixedPanel ist eingestellt auf None so dass Höhenänderungen geteilt werden.

Hinweis: Wenn Sie ein paar mehr Scheiben wollen, teilen Sie den Platz, den Sie können Nest mehrere SplitContainers.. Aber für größere Zahlen erwägen Sie, zu wechseln TLP!


Verwandte Fragen
Speisekarte