2013-04-16 4 views
1

Я хочу поставить промежуток между menustrip и формой справа от menuStrip. Я использовал свойства autosize = false и new size, высота menustrip изменена, но ширина не изменяется. Ширина Menustrip остается равной ширине формы.Изменение размера Ширина MenuStrip

menuStrip2.AutoSize = false; 
menuStrip2.Size = new Size(50, 90); 

Невозможно изменить из Desing-> Properties -> Size, также.

Я создаю разрыв в правой руке справа от себя.

+0

http://msdn.microsoft.com/en-us/library/system.windows.forms.toolstripprofessionalrenderer.aspx должен дать вам представление о том, как и когда обращаться к элементам. –

+0

И посмотрите, как правильно использовать размер ... http://msdn.microsoft.com/en-us/library/system.windows.forms.control.size.aspx Похоже, возможно, вам нужно установить размер кнопок, кнопки, вероятно, больше, чем вы устанавливаете menustrip, и полоска меню автоматически изменяется на размер, так же, как действует DIV. –

+0

Просто установите для свойства Dock значение None. Вероятно, добавьте правый якорь, он не может понять, правильно ли правая часть menustrip против левой формы. –

ответ

4

Вот как вы это делаете во время разработки:

  1. Создать новую форму.

  2. место две панели на этой форме. Назовите их panelTop и panelFill. Установите свойства док-станции на Top и Fill соответственно. Измените размер panelTop на высоту, которую вы хотите, чтобы полоса меню была.

  3. Добавить еще одну панель в panelTop, назовите ее panelTopRight. Подсоедините эту панель Right.

  4. Добавить свою полосу меню. Задайте свойство док-станции для заполнения.

  5. Щелкните правой кнопкой мыши по адресу panelTopRight и нажмите «Отправить на возврат». Теперь вы можете изменить размер panelTopRight, чтобы разрешить необходимый пробел.

Если вы хотите сделать это во время выполнения, вам придется выполнить все вышеперечисленное в коде; но это, возможно, еще один вопрос ...

Надеюсь, это поможет.

+1

Killercam ..! Разве не лучше использовать ToolStripContainer. Тогда мы можем изменить размер контейнера. –

+1

Вы можете делать то, что хочет OP с помощью инструмента «ToolStripContainer». Он хочет, чтобы меню было наверху и не упоминалось о возможности перестановки полосы - в этом случае это лучший и самый простой способ пойти ... Кроме того, с вышесказанным вы по-прежнему можете изменять размер меню по желанию, меню привязано к высоте 'panelTop'. – MoonKnight

+0

* Вы не можете делать то, что хочет OP с помощью инструмента «ToolStripContainer». – MoonKnight

0

Открыть xyz.designer.cs файл, а затем посмотреть на Windows Form Designer сгенерированный код после того, как видящие для событий, генерируемых для MenuStrip элементов тогда,

this.menuStripnameToolStripMenuItem.Padding = новый System.Windows.Forms.Padding (4, 0, 81, 4);

+0

Не могли бы вы подробнее рассказать о своем ответе, добавив немного подробного описания решения, которое вы предоставляете? – abarisone

 Смежные вопросы

  • Нет связанных вопросов^_^