世俱杯 2025

DevExpress学习笔记---NavBarControl

原创|其它|编辑:郝浩|2011-12-28 00:18:35.000|阅读 9053 次

概述:昨天研究了RibbonControl控件,搭建了一个空架子,今天再次研究下NavBarControl。由于本人做Web研发出身,所以对于上菜单,左导航,右内容的界面组织形式较为熟悉,所以自然想到了NavBarControl。

# 界面/图表报表/文档/IDE等千款热门软控件火热销售中 >>

   昨天研究了RibbonControl控件,搭建了一个空架子,今天再次研究下NavBarControl。由于本人做Web研发出身,所以对于上菜单,左导航,右内容的界面组织形式较为熟悉,所以自然想到了NavBarControl。

  在昨天DevExpress学习笔记---Ribbon的框架基础上继续。

设置NavBar

  从工具箱中拖一个NavBarControl到Form界面上,设置其Dock属性为Left,PaintStyleName为SkinNav:Blue。效果如下:

   右键点击navBarGroup1,可选择新增/删除Group,或者新增Item,这里我新建一个Group和一个Item。如果想删除Item或者对 某Group中的Item进行排序,就需要点击右上角的三角符号进入Designer了,具体的操作方法与RibbonControl大同小异,不再繁 叙。效果图如下:

  现在两个Group是堆积在一起的,如果隐藏这种抽屉效果,设置NavbarControl的NavgationPaneMaxVisibleGroups的值为0,可看到效果如下:

设置Item

  一般我们希望Item左边有小图标或者在较少Item的情况下上面有大的图标,如果想要达到这种效果,先从工具箱中拖入 两个ImageCollection控件,一个控件承担小图标的集合,另一个控件承担大图标的集合。啰嗦一句,DX控件的图标集合中,小图标一般为 16×16,大图标为32×32.

  设置完图标集合后,分别设置NavBarControl控件的属性SmallImages和LargeImages为相应的ImageCollection控件。

  然后选中NavBarItem1,在其属性中设置SmallImageIndex的值,可看到Item前面有相应的图标出现,如下图所示:

  尝试设置Item的属性LargeImageIndex的值,则发现没有任何变化,这是为什么呢?原来在设置这个属性之前还需要设置此Item所在Group的属性GroupStyle的值为LargeImageText。设置完成后的效果如下所示:

设置Item的单击事件

  双击Item的LinkClicked事件,在生成的函数中写上如下的代码:

        private void navBarItem1_LinkClicked_1(object sender, DevExpress.XtraNavBar.NavBarLinkEventArgs e)

        {

         ;   MessageBox.Show(string.Format("{0} Item was Clicked", e.Link.ItemName));

        }

运行程序的效果为:


(慧都控件网版权所有,转载请注明出处,否则追究法律责任)

标签:DevExpress

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@dpuzeg.cn

文章转载自:网络转载

为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
相关产品
DevExpress Universal Subscription

优秀的界面控件开发包,帮助企业构建卓越应用!

DevExpress WPF Subscription

高效MVVM开发模式,WPF界面解决方案首选工具,帮助企业实现酷炫动效界面。

DevExpress Silverlight Controls

高性价比高实用性的Silverlight用户界面控件套包,拥有大量的示例和帮助文档,开发者能够快速上手!

DevExpress WinForms Subscription

为Windows Forms平台创建具有影响力的业务解决方案,高性价比WinForms界面控件套包。

DevExpress DXperience Subscription

高性价比的企业级.NET用户界面套包,助力企业创建卓越应用!

title
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP