我需要在Windows窗体中制作一个菜单面板。 (我将在下面附上一个示例)。 在boostrap中,使用下拉菜单非常容易。但是我需要在Windows窗体中制作它。
注意: 我有一个userControl表单,并在其中填充了一个高度为30的标题组件(类型为userControl),在标题组件下,我还有另一个主体组件(类型为usercontrol)。
到目前为止,我尝试将高度为80的面板添加到标有“菜单1”,“菜单2”,“菜单3”,“菜单4”的标头组件中。开始时面板的可见性为假。每当我单击“显示按钮”时,其可见性就会设置为true。但是,由于组件的高度小于面板的高度,因此无法完全看到面板的内容。
这是我将标题和正文组件添加到主面板的方式
mainForm.SuspendLayout();
foreach (var userControl in mainForm.Controls.OfType<UserControl>())
{
mainForm.Controls.Remove(userControl);
}
mainForm.Controls.Clear();
mainForm.Controls.Add(new HeaderComponentForm());
newForm.Location = new System.Drawing.Point(0,30);
mainForm.Controls.Add(newForm);
mainForm.ResumeLayout();
这是“显示按钮”的点击事件
private void pbMenu_Click(object sender, EventArgs e)
{
if (pnlMenu.Visible)
{
pnlMenu.Visible = false;
}
else
{
pnlMenu.Visible = true;
pnlMenu.BringToFront();
}
}