4 Stimmen

C# ändern Position der Steuerelemente innerhalb FlowLayoutPanel

Ich verwende flowLayoutPanel um relative Standortkontrollen zu haben. Ich möchte die Position des Steuerelements innerhalb der flowLayoutPanel . Wenn ich sage, Standort, ich meine nicht control1 vor control2 oder so etwas wie das - ich meine, dass, wenn ich 2 Kontrollen, sagen wir haben label y comboBox - die comboBox Die Körpergröße beträgt 21, die label ist 13 und die Höhe der flowLayoutPanel ist ebenfalls 21 Jahre alt. Ich möchte die label in der vertikalen Mitte des flowLayoutPanel - ((21-13)/2) von oben. Ich möchte nicht etwas Spezielles für die vertikale Mitte, sondern eine allgemeine Lösung.

4voto

Ken Wayne VanderLinde Punkte 17916

Sie könnten auch den oberen Rand des Etiketts auf (containerHeight-labelHeight)/2 setzen

2voto

Marco Punkte 1336

Das Flusslayout ist dabei nicht hilfreich: Es ordnet lediglich alle Steuerelemente in einer Liste an und passt ihre Position an das Bedienfeld an. Sie können Untergruppen erstellen, indem Sie die Steuerelemente in einer Tabelle innerhalb des Flusslayouts anordnen, oder einfach eine Tabelle für maximale Kontrolle verwenden.

0voto

Salah Punkte 1
    int cIndex = this.FlowLayoutPanel1.Controls.GetChildIndex(Button1);
    int bIndex = this.FlowLayoutPanel1.Controls.GetChildIndex(Button1);

    this.FlowLayoutPanel1.Controls.SetChildIndex(Button1, bIndex);
    this.FlowLayoutPanel1.Controls.SetChildIndex(Button2, cIndex);

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X