Как изменить размер System.Windows.Forms.ToolBar? - PullRequest
1 голос
/ 05 октября 2009

Я не беспокоился о панелях, стыковках или якорях. Я просто собрал элемент управления ToolBar (не ToolStrip) и, похоже, не смог его измерить.

System.Windows.Forms.ToolBar tb = new System.Windows.Forms.ToolBar();

// Reports 292x28 (approx) if I check width and height
// Basically the width of the form and I assume a default height
tb.Size = new System.Drawing.Size(195, 48);


// Reports 48x48, but does not actually create buttons of that size
// (It reports 48x48 because I'm retrieving 48x48 icons from a ResourceManager (resx))
tb.ButtonSize = new System.Drawing.Size(48, 48); // 

Самым близким, что я нашел, чтобы сделать панель инструментов выше, было:

http://bytes.com/topic/c-sharp/answers/241614-changing-height-toolbar-button

Хотя это довольно устарело. И я этого не поняла. ToolBarButtons не имеет свойств высоты, ширины или размера.

Я использую SharpDevelop, полностью кодирую вручную в Vista, со всеми .NET каркасами.

EDIT:

Вот ТОЧНЫЙ код, который я сейчас использую.

#region ImageList/Toolbar
ImageList toolbarImages = new ImageList();
Image wizardToolbarImage = (Bitmap) rm.GetObject("wizard");
Image optionsToolbarImage = (Bitmap) rm.GetObject("configure");
toolbarImages.Images.Add(wizardToolbarImage);
toolbarImages.Images.Add(optionsToolbarImage);      

ToolBar toolbarMain = new ToolBar();
toolbarMain.Size = new Size(195, 25); // no effect
ToolBarButton wizardToolbarButton = new ToolBarButton();
ToolBarButton optionsToolbarButton = new ToolBarButton();
wizardToolbarButton.ImageIndex = 0;
wizardToolbarButton.ToolTipText = "Wizard!";
optionsToolbarButton.ImageIndex = 1;
optionsToolbarButton.ToolTipText = "Options!";
toolbarMain.Buttons.Add(wizardToolbarButton);   
toolbarMain.Buttons.Add(optionsToolbarButton);

toolbarMain.Appearance = ToolBarAppearance.Normal;
toolbarMain.ButtonSize = new System.Drawing.Size(48, 48); // no effect
toolbarMain.ImageList = toolbarImages;
toolbarMain.ButtonClick += new ToolBarButtonClickEventHandler(toolbarMain_Click);

Controls.Add(toolbarMain);
#endregion

Ответы [ 2 ]

1 голос
/ 05 октября 2009

Почти в каждом написанном мною приложении winforms, независимо от языка или структуры, панель инструментов могла быть только выше с помощью значков большего размера.

0 голосов
/ 16 апреля 2011

Вы также можете поместить панель инструментов внутри панели и установить для свойства Dock полосы инструментов значение Fill. И тогда вы можете изменить размер панели до нужного вам размера.

...