BarManager菜单栏加载与菜单项点击事件详解|devExpress教程

我是编程侠

我是编程侠,我敲的不是代码,而是。。。

BarManager菜单栏加载与菜单项点击事件详解|devExpress教程

BarManager是一个菜单栏管理类,主要是在C#桌面应用中显示菜单栏的作用,如何使用dev BarManager来加载菜单项呢?首先我们需要使用devExpress控件拖拽一个barmanager控件到界面中,如图:

20180117102017.jpg

拖拽了一个BarManager控件之后就会在MainPanel.cs类中的InitializeComponent组件初始化方法中生成大概如下这两行代码:

private void InitializeComponent()
{
    this.barManager1 = new DevExpress.XtraBars.BarManager(this.components);
    this.menubar = new DevExpress.XtraBars.Bar();
}

该如何给dev BarManager添加菜单项,并给菜单项添加点击事件呢?我们可以在mainPanel面板加载的时候就来加载BarManager菜单项,并给菜单项添加点击事件,代码如下:

//MainPanel界面初始化方法
private void MainPanel_Load(object sender, EventArgs e)
{
	barManager1.BeginUpdate();
	//添加菜单选项
	menubar.AddItems(getMenuList());
	//添加点击事件
	barManager1.ItemClick += new ItemClickEventHandler(barButtonItem1_ItemClick);
	barManager1.EndUpdate();
}
//将所有的菜单按钮封装到BarButtonItem数组中
public BarButtonItem[] getMenuList() {
	List<String> menuList = new List<string>();
	menuList.Add("系统权限");
	menuList.Add("基础数据");
	menuList.Add("基本业务");
	menuList.Add("客服管理");
	menuList.Add("外观(A)");
	menuList.Add("窗体(W)");
	BarButtonItem[] itemArray = new BarButtonItem[menuList.Count];
	for (int i=0; i<menuList.Count; i++) {
		BarButtonItem item = new BarButtonItem(barManager1, menuList[i]);
		itemArray[i] = item;
	}
	return itemArray;
}
//点击事件的实现
private void barButtonItem1_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
{
	BarButtonItem buttonItem = e.Item as BarButtonItem;
	BarManager manager = sender as BarManager;
	
	MessageBox.Show(sender+"==="+buttonItem.Caption);
}

MainPanel界面添加了BarManager菜单项之后的效果如下:

20180123095446.jpg

点击上方的每一个菜单选项会触发BarManager菜单项点击事件,如下所示:

20180123095628.jpg

posted @ 2019-06-05 19:10  grj001  阅读(310)  评论(0编辑  收藏  举报