如何在Windows窗体中创建垂直导航栏?

在此处输入图像描述

我正在研究我的学校项目,Windows表单应用程序。

正如你所见,我创建了3个面板,一个用于标题,一个用于导航栏,一个用于内容。 我可以将标题和导航栏静态化,例如网页中的布局,以及更改btn点击内容。

我创建了几个面板,并为每个面板更改可见性(true / false)以显示特定面板。 有没有更好的做到这一点,我认为它必须更优雅,我开始,它的学校项目和我找到聪明的答案。

当然,有很多选项可以在Windows窗体中创建这样的布局。 在这里,我分享了垂直菜单,中心容器和内容持有者的一些不错选项。

垂直菜单

您有很多选择,包括以下两个不错的选择:

  • Dock属性设置为Left ToolStrip组件。 此外,菜单项可以包含图像,您可以设置为在文本之前或文本之前显示图像。 您可以在点击时选中一个项目,然后取消选中其他项目。 这样很明显哪一个是活动菜单。
  • 包含一些RadioButton控件的Panel控件。 面板的Dock属性设置为Left ,它包含一些RadionButton控件,您可以将其Appearance设置为Button ,将其Dock属性设置为Top 。 您可以将单选按钮的FlatAppearance设置为SystemFlat 。 单选按钮也可以在文本之前或之上显示图像。

中心集装箱

您可以使用Panel作为容器。 将容器面板的Dock属性设置为Fill

内容持有人

像菜单一样,您有很多选择,包括以下两个不错的选择:

  • 您可以使用TabControl不同TabPages作为内容持有者。 将不同的内容放在控件的不同选项卡中。 您可以隐藏选项卡标题,也可以禁用快捷键,以便在选项卡之间进行导航。 然后,它足以根据所选菜单设置控件的选定选项卡。

  • 您可以使用不同的Form作为内容持有者。 以不同的forms放置不同的内容。 然后,您可以根据所选菜单在内容面板中显示表单。 要在内容面板中显示表单,将表单的TopLevel属性设置为false并将它们的FormBorderStyle设置为None并将它们添加到中心容器控件集合并显示表单就足够了。 您可以根据所选菜单显示和隐藏表单。

您可以使用FlowLayoutPanel而不是Panel ,然后只需添加菜单项块。

如果考虑到FlowLayoutPanel宽度给菜单项正确宽度,您将获得所需的菜单。