SideNav控件由垂直放置在左侧的选项卡以及可选的第一个按钮组成,该按钮可折叠和扩展选项卡显示。SideNav控件可帮助您围绕所谓的“汉堡”样式菜单创建应用程序。您还可以使用SideNav控件将可扩展选项卡添加到您的应用程序。
DotNetBar for WinForms是一个拥有89个组件的用户界面控件套包,用户可以使用Visual Studio 2005-2015轻松地创建专业的用户界面。十多年来DotNetBar帮助开发人员轻松地创建易用的专业Windows Forms (WinForms) 用户界面。
点击立即下载DotNetBar for WinForms
SideNav控件可帮助您围绕所谓的“汉堡”样式菜单创建应用程序。您还可以使用SideNav控件将可扩展选项卡添加到您的应用程序。
SideNav控件由垂直放置在左侧的选项卡以及可选的第一个按钮组成,该按钮可折叠和扩展选项卡显示。选项卡显示折叠时,选项卡仅显示图像或符 ,展开后,将同时显示文本和图像或符 ,因此,最好将图像和文本都分配给每个选项卡。此外,由于每个标签的点击区域较大,因此它们在启用触摸的设备上也能正常工作。

左侧的每个按钮都由SideNavItem对象表示。通过简单地为该SideNavItem实例设置IsSystemMenu = true,即可自动折叠菜单的第一个按钮。单击按钮后,将启用菜单的自动折叠/展开功能。如果需要通过代码展开/折叠菜单,只需使用IsMenuExpanded属性。
每个SideNavItem对象可能都有一个与之关联的面板,该面板在单击按钮时显示。该面板是SideNavPanel控件的一个实例,并且已分配给SideNavItem.Panel属性。如果未将面板分配给SideNavItem,则该项目将仅充当按钮。
在设计时,只需右键单击SideNav控件即可添加新的标签,按钮或分隔符:
要在运行时创建新标签,只需使用以下代码:
C#:
SideNavItem item = new SideNavItem();item.Text = "Explore";item.Symbol = "uf002";SideNavPanel panel = new SideNavPanel();panel.Dock = DockStyle.Fill;item.Panel = panel;sideNav1.Controls.Add(panel);sideNav1.Items.Add(item);// Select item.item.Checked = true;
VB:
Dim item As New SideNavItem()item.Text = "Explore"item.Symbol = ChrW(&Hf002).ToString()Dim panel As New SideNavPanel()panel.Dock = DockStyle.Fillitem.Panel = panelsideNav1.Controls.Add(panel)sideNav1.Items.Add(item)' Select item.item.Checked = True
SideNav控件还允许最终用户使用位于控件右边缘的缩放器来调整其大小。 此功能由EnableSplitter属性控制。
SideNav控件为最终用户提供了一个使用内容标题中的按钮折叠所选内容的选项。EnableClose属性控制此按钮是否可见。从代码中,您可以使用Close()方法关闭控件,并使用Open()方法将其备份打开。这是关闭的样子:
最终用户还可以通过使用选项卡标题中的最大化按钮来最大化控件的选定内容。最大化将简单地扩展控件的宽度,因此将占用父控件右侧的所有可用空间。EnableMaximize属性控制此按钮是否可见。从代码中,您可以使用Maximize()方法来最大化控件,并使用Maximize方法来还原控件。最后是这样的:
选择
要在SideNav控件中选择项目,可以将sideNav.SelectedItem属性设置为要选择的SideNavItem实例,或者,您可以将sideNavItem.Checked = true设置为选择给定的SideNavItem。选择更改后将触发SelectedItemChanged事件。
自定义颜色
SideNav控件使用的所有颜色均在Office2007ColorTable中定义。 以下代码显示了如何自定义SideNav控件颜色,将其放置在InitializeComponent()方法调用之后的表单构造函数中:
C#:
Office2007ColorTable table = ((Office2007Renderer)GlobalManager.Renderer).ColorTable;SideNavColorTable ct = table.SideNav;ct.TitleBackColor = Color.Red;ct.SideNavItem.MouseOver.BackColors = new Color[] { Color.Red, Color.Yellow };ct.SideNavItem.MouseOver.BorderColors = new Color[0]; // No borderct.SideNavItem.Selected.BackColors = new Color[] { Color.Green };ct.BorderColors = new Color[] { Color.Gold }; // Control border color
VB:
Dim table As Office2007ColorTable = CType(GlobalManager.Renderer, Office2007Renderer).ColorTableDim ct As SideNavColorTable = table.SideNavct.TitleBackColor = Color.Redct.SideNavItem.MouseOver.BackColors = New Color() { Color.Red, Color.Yellow }ct.SideNavItem.MouseOver.BorderColors = New Color(){} ' No borderct.SideNavItem.Selected.BackColors = New Color() { Color.Green }ct.BorderColors = New Color() { Color.Gold } ' Control border color
想要获得DotNetBar for WinForms更多资源、正版授权的伙伴,请咨询【客服】了解
标签:
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!