如何在Windows窗体中创建垂直导航栏?
我正在研究我的学校项目,Windows表单应用程序。
正如你所见,我创建了3个面板,一个用于标题,一个用于导航栏,一个用于内容。 我可以将标题和导航栏静态化,例如网页中的布局,以及更改btn点击内容。
我创建了几个面板,并为每个面板更改可见性(true / false)以显示特定面板。 有没有更好的做到这一点,我认为它必须更优雅,我开始,它的学校项目和我找到聪明的答案。
当然,有很多选项可以在Windows窗体中创建这样的布局。 在这里,我分享了垂直菜单,中心容器和内容持有者的一些不错选项。
垂直菜单
您有很多选择,包括以下两个不错的选择:
- 其
Dock
属性设置为Left
ToolStrip
组件。 此外,菜单项可以包含图像,您可以设置为在文本之前或文本之前显示图像。 您可以在点击时选中一个项目,然后取消选中其他项目。 这样很明显哪一个是活动菜单。 - 包含一些
RadioButton
控件的Panel
控件。 面板的Dock
属性设置为Left
,它包含一些RadionButton
控件,您可以将其Appearance
设置为Button
,将其Dock
属性设置为Top
。 您可以将单选按钮的FlatAppearance
设置为System
或Flat
。 单选按钮也可以在文本之前或之上显示图像。
中心集装箱
您可以使用Panel
作为容器。 将容器面板的Dock
属性设置为Fill
。
内容持有人
像菜单一样,您有很多选择,包括以下两个不错的选择:
-
您可以使用
TabControl
不同TabPages
作为内容持有者。 将不同的内容放在控件的不同选项卡中。 您可以隐藏选项卡标题,也可以禁用快捷键,以便在选项卡之间进行导航。 然后,它足以根据所选菜单设置控件的选定选项卡。 -
您可以使用不同的
Form
作为内容持有者。 以不同的forms放置不同的内容。 然后,您可以根据所选菜单在内容面板中显示表单。 要在内容面板中显示表单,将表单的TopLevel
属性设置为false并将它们的FormBorderStyle
设置为None
并将它们添加到中心容器控件集合并显示表单就足够了。 您可以根据所选菜单显示和隐藏表单。
您可以使用FlowLayoutPanel
而不是Panel
,然后只需添加菜单项块。
如果考虑到FlowLayoutPanel宽度给菜单项正确宽度,您将获得所需的菜单。