Во-первых, немного обзор того, как мой текущий пользовательский интерфейс выглядит следующим образом:контроль «Pin» над элементов в ToolstripMenu
Обратите внимание, что кроме материала в ToolStripControlHost, все остальное стандартные WinForms.
Короче говоря, я хочу иметь что-то похожее на ToolStripControlHost, но мне нужно, чтобы оно «закреплено» в нижней части меню, в основном так, что, когда есть много элементов, оно не прокручивается, как остальные Пункты меню.
После некоторого поиска я пришел к выводу, что, возможно, настройка живописи может быть решением, не знаю, действительно ли это так.
Вот некоторые примеры кода, но я не уверен, насколько это полезно:
public ToolStripDropDownButtonContainer(ToolStripDropDownButton button)
{
this.UIControl = button.GetCurrentParent();
this.Button = button;
if (this.Button.Tag == null)
{
this.Button.Tag = true;
this.Button.DropDownDirection = ToolStripDropDownDirection.AboveLeft;
ToolStripDropDownMenu menu = (ToolStripDropDownMenu)this.Button.DropDown;
menu.SuspendLayout();
try
{
menu.BackColor = Color.White;
menu.ShowImageMargin = false;
menu.ShowCheckMargin = false;
menu.AutoSize = true;
menu.Margin = Padding.Empty;
menu.Padding = Padding.Empty;
menu.GripMargin = Padding.Empty;
menu.GripStyle = ToolStripGripStyle.Hidden;
menu.MinimumSize = new Size(310, 0);
menu.MaximumSize = menu.MinimumSize;
// TODO pin panel (or some control) to the bottom-side of the menu
}
finally
{
menu.ResumeLayout();
}
}
}
Правильно ли я понял: вы хотите иметь 2 "области" во всплывающем окне: верхняя часть, где прокручиваются 3-4 вещи и одна привязана к основанию? Я не знаю, что такое привязанный элемент управления, но вы пробовали вложенность ToolStripControlHosts? Тот, который у вас внутри другого, который содержит 2 вещи: скроллер и без скроллера? – Plutonix
@Plutonix Да, я закончил делать что-то подобное. – Christian