简介

  BarButtonItem:元素(按钮、子菜单、标签、编辑器等) 

this.barButtonItem3 = new DevExpress.XtraBars.BarButtonItem();

  Bar:工具栏,可以停靠在容器(窗体)的任何边缘。当bar被停靠在窗体边缘时,实际上是放置在一个已停靠在此边缘的停靠控件BarDockControl之上。可以在工具栏Bar内部显示任何BarButtonItem:按钮、静态文本、子菜单、编辑器等。

  BarManager:如果需要把菜单Bar添加到窗体或用户控件中,则需要把一个不可视的 BarManager 组件添加到窗体/用户控件中。此组件维护窗体内菜单的布局,响应最终用户操作(例如单击 bar 命令和按键操作),提供自定义功能等。它维护 bars、bar items和 bar item类别的集合。因此您可以使用它的方法来添加、删除和访问这些bar元素。

  当BarManager被创建时,会自动创建四个常规的停靠控件BarDockControl,并把它们停靠在相应的窗体边缘。

  仅当 bar 已经放置在停靠控件BarDockControl上时,停靠控件BarDockControl才可视。在其他所有情况下,停靠控件的宽度都为零。在把bar拖动到窗体的任一边缘时,相应的停靠控件接收并显示此 bar。

  不需要在应用程序中修改常规停靠控件BarDockControl的属性,除非你想为已停靠的 bars 提供背景设置。BarManager自动创建的停靠控件被命名为 barDockControlTop... barDockControlRight。每个停靠控件都由 BarDockControl 类表示。

弹出式菜单PopuMenu

  PopuMenu类似与工具栏Bar,需要BarManager进行管理,但是弹出式菜单拖动到窗体中,不会在窗体中显示。

private DevExpress.XtraBars.BarManager barManager1;
private DevExpress.XtraBars.Bar bar1;
private DevExpress.XtraBars.BarDockControl barDockControlTop;
private DevExpress.XtraBars.PopupMenu popupMenu1;

  下面通过代码声明和绑定一个弹出式菜单。

PopupMenu menu = new PopupMenu();
// Bind the menu to a bar manager.
menu.Manager = barManager1;
// Add two items that belong to the bar manager.
menu.ItemLinks.Add(barManager1.Items["iCopy"]);
menu.ItemLinks.Add(barManager1.Items["iPaste"]);

  要激活弹出式菜单,通常要接管特定的事件。如果鼠标右键被按下,下列代码将显示特定的PopupMenu。

private void Form1_MouseUp(object sender, System.Windows.Forms.MouseEventArgs e) {
if(e.Button == MouseButtons.Right)
popupMenu1.ShowPopup(Control.MousePosition);
}

1

2

Bar菜单的更多相关文章

  1. DotNetBar.Bar菜单的使用

    DotNetBar.Bar菜单的使用 老帅     在C#中使用控件DevComponents.DotNetBar.Bar时,怎样设计菜单呢?      1.拖放生成一个菜单容器      拖放一个D ...

  2. 札记:Fragment基础

    Fragment概述 在Fragment出现之前,Activity是app中界面的基本组成单位,值得一提的是,作为四大组件之一,它是需要"注册"的.组件的特性使得一个Activit ...

  3. sublime使用

    显示侧板的文件夹: View -> Side Bar 菜单[project]->add folder to  project.把文件夹显示在左边的sidebar上. 安装插件: packa ...

  4. 很值得学习的java 画图板源码

    很值得学习的java 画图板源码下载地址:http://download.csdn.net/source/2371150 package minidrawpad; import java.awt.*; ...

  5. Android开源项目库汇总

    最近做了一个Android开源项目库汇总,里面集合了OpenDigg 上的优质的Android开源项目库,方便移动开发人员便捷的找到自己需要的项目工具等,感兴趣的可以到GitHub上给个star. 抽 ...

  6. GitHub上受欢迎的Android UI Library

    GitHub上受欢迎的Android UI Library 内容 抽屉菜单 ListView WebView SwitchButton 按钮 点赞按钮 进度条 TabLayout 图标 下拉刷新 Vi ...

  7. Swing学习2——图标添加Icon接口使用

    废话没有,看代码. 主要就是通过实现Icon接口在标签添加一个圆形图标,并在框架中显示. package com.sword.swing_test; import javax.swing.*; imp ...

  8. Android UI相关开源项目库汇总

    最近做了一个Android UI相关开源项目库汇总,里面集合了OpenDigg 上的优质的Android开源项目库,方便移动开发人员便捷的找到自己需要的项目工具等,感兴趣的可以到GitHub上给个st ...

  9. 用面向对象的编程方式实现飞机大战小游戏,java版

    概述 本文将使用java语言以面向对象的编程方式一步一步实现飞机大战这个小游戏 本篇文章仅供参考,如有写的不好的地方或者各位读者哪里没看懂可以在评论区给我留言 或者邮件8274551712@qq.co ...

随机推荐

  1. secureCRT的一些小知识

    secureCRT 是一个非常不错的终端软件,在嵌入式开发过程中经常使用到,所以了解一下其快捷键操作是非常有必要的,可以提高开发效率. 0.在secureCRT里切换不同的窗口:ctrl+tab.   ...

  2. iOS--难倒一大片的问题

    // //  main.m //  10.27***** // //  Created by  on 15/10/27. //  Copyright (c) 2015年 . All rights re ...

  3. K - Least Common Multiple

    Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u Submit Status Descr ...

  4. selenium获取多窗口句柄并一一切换至原窗口句柄(三个窗口)

    网上有很多是selenium基于python来获取两个窗口句柄与切换,本文实现用python+selenium获取多窗口句柄并一一切换至原窗口句柄(三个窗口),且在每个窗口下进行一个搜索或翻译,然后截 ...

  5. web前后端框架整理

    nodejs <——> Express <———> bootstrap <———> angularJS <————> jquery <—————& ...

  6. Binary Tree Preorder Traversal

    Given a binary tree, return the preorder traversal of its nodes' values. For example:Given binary tr ...

  7. Python实例2

    2.企业发放的奖金根据利润提成.利润(I)低于或等于10万元时,奖金可提10%:利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可提成7.5%:20万到40万之间 ...

  8. C# 模拟按下回车键自动登录

    private void Form1_Load(object sender, EventArgs e) { //this.Show(); this.Activate(); //this.Focus() ...

  9. Codeforces Round #379 (Div. 2) F. Anton and School

    题意: 给你n对 b[i], c[i], 让你求a[i],不存在输出-1 b[i] = (a[i] and a[1]) + (a[i] and a[2]) + (a[i] and a[3]) +... ...

  10. Web前端开发学习心得(一)

    说快也快,说慢也慢.自学前端一个月了,进步不算大,不过仔细想来,倒也收获不少.码几行字,一是总结经验,二是继往开来. 刚开始是跟慕课网学的HTML+CSS,慕课网的课程虽然好,但好多知识都是特别基础的 ...