Наличие более одной панели инструментов на одной линии - PullRequest
1 голос
/ 26 июня 2010

C # WinForms: я хотел бы иметь две панели инструментов, но я также хочу, чтобы они были на одной линии.Я имею в виду, я не хочу, чтобы один из них был ниже или выше другого.поэтому они будут на буксире, что я не хочу.

Как я могу это сделать?

Ответы [ 2 ]

8 голосов
/ 26 июня 2010

Добавьте FlowLayoutPanel к вашей форме ( AutoSize = True; AutoSizeMode = GrowAndShrink; Dock = Top; FlowDirection = LeftToRight; 1012 * WrapContents * = True). Затем добавьте два элемента управления ToolStrip к панели FlowLayoutPanel ( Dock = Top);

ToolStrips может переноситься в зависимости от ширины формы.

1 голос
/ 26 июня 2010

Я предполагаю, что вы используете дизайнер Visual Studio. Если нет, дайте мне знать.
Положите контейнер ToolStrip, измените его видимость на (если вы хотите, чтобы он был в верхней части вашего приложения)только сверху, затем нажмите «Dock Fill in Form»

Теперь добавьте две перетяжки в контейнер.Presto: -)

Редактировать:

В соответствии с вашими требованиями, это немного сложно, но не так плохо.Нажмите на свою панель инструментов, чтобы она имела маленькую белую рамку в верхнем левом углу и маленький треугольник в верхнем правом.Нажмите на треугольник и измените Dock на «None». Теперь вручную растяните его, чтобы заполнить половину экрана / что угодно, и сделайте то же самое для второй панели инструментов.

Единственная проблема с этим подходом заключается в том, что иногда я замечал визуальноестудия "переставляет" панели инструментов на один или два пикселя случайным образом после компиляции.Итак, дважды проверьте перед выпуском клиенту: -D

...