Popup Menus 弹出菜单

使用弹出菜单(popup menus),我们可以在   控件上   显示   上下文选项   或  命令

弹出菜单是一个显示了特定项的窗体,用户可以选择这些项以执行相应的操作。

使用PopupMenu控件就可以在我们的应用程序中使用弹出菜单。

通过BarManager的“名称”+“PopupContenxtMenu”属性绑定PopuMenus控件


注意:

在定制和使用popup menu之前,需要向窗体上添加一个bar manager并确保这个popup menu绑定 了这个bar manager


默认情况下,在设计时(at design time)添加到窗体的弹出菜单会自动地寻找窗体内的 bar manager

如果找到的话,会通过PopupMenu.Manager属性将其绑定到bar manager。

如果没有自动绑定到bar manager,那就通过PopupMenu.Manager属性手动绑定。

以下是PopupMenu组件的使用方法:

第一步:从工具箱中将BarManager拉入窗体


第二步:在BarManager控件中点击

添加几个BarSubItem项(子项-有下一级菜单)。


第三步:在BarManager控件中点击添加几个BarBottonItem(最终项)。


第四步:从工具箱中将PopupMenu拉入窗体,设置PopupMenu的Manager属性为barManager1


第五步:右击PopupMenu在弹出的菜单内选中Customize,

然后在弹出的对话框中, 把想要在右键菜单中显示的项   拉进PopupMenu中就OK了,或者手工添加

核心步骤 第六步:

在需要右击后弹出菜单的控件上, 监听xxxx_MouseUp事件,

添加以下代码段, 弹出PopupMenu菜单

if (e.Button == MouseButtons.Right)
{
popupMenu1.ShowPopu(Control.MousePosition);
}

效果如下:

RadialMenu控件

该控件是圆形菜单,可以以菜单的形式添加菜单项;

该控件的ShowPopup(Point point)方法用于显示圆形菜单

该控件必须绑定到RibbonControl或者BarManager的属性上去


代码如下:

private void RadialMenuForm_MouseUp(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Right)
{
radialMenu1.ShowPopup(Control.MousePosition);
}
}

效果如下:


XtraTabControl控件

XtraTabControl:显示多个选项卡

XtraTabPage: 选项卡页

SelectedTabPage: XtraTabControl的一个属性,可设置或取得当前选项卡页。

设置Tab头部的方向:

Headerlocation=left
HeaderOrientation=Horizontal

1、TabPages属性

以集合的形式存储page页;

使用代码添加页:

using DevExpress.XtraTab;

XtraTabPage page = new XtraTabPage();
page.Text = "beyond";
xtraTabControl1.TabPages.Add(page);

2、MultiLine属性

把其值设为true, 当可用空间不够显示的页标题的长度时,允许页头进行多行显示.

xtraTabControl1.MultiLine = DevExpress.Utils.DefaultBoolean.True;

3、SelectedTabPage属性

设定默认情况下显示的页(XtraTabPage对象);

获取或设置当前选定选项卡页的索引。

xtraTabControl.SelectedTabPageIndex = ;

4、ClosePageButttonShowMode属性

该属性控制哪一页上显示关闭按钮。

示例代码如下:

this.xtraTabControl1.ClosePageButtonShowMode = DevExpress.XtraTab.ClosePageButtonShowMode.InActiveTabPageAndTabControlHeader;

效果如图:

在Tab中显示关闭按钮: 
设置xtraTabControl1的属性 ClosePageButtonShowMode 为InAllTabPageHeaders 
设置XtraTabPage的属性ShowCloseButton属性为true

5、HeaderButton属性:

可以通过该属性设置该控件右上角显示的按钮,

可以添加 Close, Next 和Prev 按钮等。

6、SelectedPageChanged 事件

private void xtraTabControl1_SelectedPageChanged(object sender, DevExpress.XtraTab.TabPageChangedEventArgs e)

        {

            //通过不同的TabPage名称,加载对应方法

             if (e.Page.Name=="xtraTabPage1")

            {

                InitRoleBindingSource();

                SetRoleChecked();

            }

            else if (e.Page.Name=="xtraTabPage2")

            {

                InitEntSelectBindingSource();

                SetEntSelectChecked();

            }

        }

7、添加和删除TabPage

https://blog.csdn.net/hyj_13/article/details/20314463

SplitContainerControl控件

实现效果如图:


该控件的PanelVisibility属性:

控制  面板Panel1和面板Panel2的可见性,


代码如下:

//仅Panel1可见
splitContainerControl2.PanelVisibility= DevExpress.XtraEditors.SplitPanelVisibility.Panel1; //Panel1、Panel2都可见
splitContainerControl2.PanelVisibility= DevExpress.XtraEditors.SplitPanelVisibility.Both;

该控件的Horizontal属性:

控制面板是成左右分割还是上下分割,

其值为true表示成左右分割布局;

其值为false表示成上下分割布局;


该控件的LookAndFeel属性:

提供了改变控件外观的权限,

该属性下的UseDefaultLookAndFeel为false时,可以通过该控件的Appearance属性对外观进行设置;


GroupControl控件

实现效果如图:


该控件的ShowCaption属性,是bool类型,当其值为false时,表示不显示标题;

该控件的CaptionImage属性可以设置标题前的图片显示,例如:

this.groupControl1.CaptionImage=global::WindowsDev.Properties.Resources.additem_32x32;

该控件的LookAndFeel属性下的UseDefaultLookAndFeel属性控制:

是否可对皮肤进行设置,为bool类型;

该控件的BorderStyle属性控制控件的边框样式:


示例代码如下:

groupControl1.BackColor = Color.LightGray;

groupControl1.LookAndFeel.UseDefaultLookAndFeel =false ;

groupControl1.ShowCaption = true;

groupControl1.BorderStyle=  DevExpress.XtraEditors.Controls.BorderStyles.Simple;

DevExpress06、Popup Menus、RadialMenu、XtraTabControl、SplitContainerControl、GroupControl的更多相关文章

  1. Leaflet:Marker、Popup类

    Marker.Popup.Tooltip类都是继承自Layer类:Event与Layer Marker 1.用例 L.marker([41,123]).addTo(map); 2.实例化 L.mark ...

  2. MyBatis学习(二)、SQL语句映射文件(2)增删改查、参数、缓存

    二.SQL语句映射文件(2)增删改查.参数.缓存 2.2 select 一个select 元素非常简单.例如: <!-- 查询学生,根据id --> <select id=" ...

  3. Lucene.net站内搜索—4、搜索引擎第一版技术储备(简单介绍Log4Net、生产者消费者模式)

    目录 Lucene.net站内搜索—1.SEO优化 Lucene.net站内搜索—2.Lucene.Net简介和分词Lucene.net站内搜索—3.最简单搜索引擎代码Lucene.net站内搜索—4 ...

  4. win10如何让她闭嘴、按什麽建系统都要说话、如何让她闭嘴?

    win10如何让她闭嘴.按什麽建系统都要说话.如何让她闭嘴? 开始 设置 轻松使用 讲述人,关掉……

  5. 传智播客JavaWeb day07、day08-自定义标签(传统标签和简单标签)、mvc设计模式、用户注册登录注销

    第七天的课程主要是讲了自定义标签.简单介绍了mvc设计模式.然后做了案例 1. 自定义标签 1.1 为什么要有自定义标签 前面所说的EL.JSTL等技术都是为了提高jsp的可读性.可维护性.方便性而取 ...

  6. StringGrid 实例3: 本例功能: 1、修改 TStringGrid的默认宽与高; 2、添加行; 3、确认当前单元并赋值.

    实例3: 本例功能: 1.修改 TStringGrid的默认宽与高; 2.添加行; 3.确认当前单元并赋值. 实例图形:

  7. 云计算三种服务模式SaaS、PaaS和IaaS及其之间关系(顺带CaaS、MaaS)

    云计算架构图 很明显,这五者之间主要的区别在于第一个单词,而aaS都是as-a-service(即服务)的意思,这五个模式都是近年来兴起的,且这五者都是云计算的落地产品,所以我们先来了解一下云计算是什 ...

  8. socket异步通信-如何设置成非阻塞模式、非阻塞模式下判断connect成功(失败)、判断recv/recvfrom成功(失败)、判断send/sendto

    socket异步通信-如何设置成非阻塞模式.非阻塞模式下判断connect成功(失败).判断recv/recvfrom成功(失败).判断send/sendto 博客分类: Linux Socket s ...

  9. MyBatis学习 之 二、SQL语句映射文件(2)增删改查、参数、缓存

    目录(?)[-] 二SQL语句映射文件2增删改查参数缓存 select insert updatedelete sql parameters 基本类型参数 Java实体类型参数 Map参数 多参数的实 ...

随机推荐

  1. 关于Markdown插入图片路径错误的问题

    关于Markdown插入图片路径错误的问题 开发问题 解决方法  妈耶,连续一天写2篇博客,也是醉了,这篇博客主要是介绍关于Markdown插入图片路径错误的问题 在上篇中,我介绍了一下Markdow ...

  2. Linux编辑启动停止重启springboot jar包脚本

    springboot的配置文件中,配置文件的名字都有各自的意义跟用途 dev 开发环境 prod 生产环境(默认) test 测试环境 加载指定配置文件 --spring.profiles.activ ...

  3. 移动端常见bug汇总001

    点击样式闪动 Q: 当你点击一个链接或者通过Javascript定义的可点击元素的时候,它就会出现一个半透明的灰色背景. A:根本原因是-webkit-tap-highlight-color,这个属性 ...

  4. [转]Centos系统中查看文件和文件夹大小

    本文转自:https://blog.csdn.net/zgmu/article/details/52882868 当磁盘大小超过标准时会有报警提示,这时如果掌握df和du命令是非常明智的选择.df可以 ...

  5. 30分钟搞定后台登录界面(103个后台PSD源文件、素材网站)

    去年八月时要做一个OA系统为了后台界面而烦恼,后来写了一篇博客(<后台管理UI的选择>)介绍了选择过程与常用后台UI,令我想不到的时竟然有许多开发者与我一样都为这个事情而花费不少时间,最后 ...

  6. NodeJS+Express开发web,为什么中文显示为乱码

    把你的文件另存为下,格式为utf-8的试下就行!

  7. 检测SQLServer复制订阅进度

    --检测复制订阅进度 --SQLSERVER2012 --创建链接服务器ReadServer,WriteServer,它们分别链接发布服务器.订阅服务器 --修改数据库名称 --在分发服务器执行 US ...

  8. oracleHelper 操作帮助类

    using System; using System.Configuration; using System.Data; using System.Collections; using Oracle. ...

  9. arm裸板驱动总结(makefile+lds链接脚本+裸板调试)

    在裸板2440中,当我们使用nand启动时,2440会自动将前4k字节复制到内部sram中,如下图所示: 然而此时的SDRAM.nandflash的控制时序等都还没初始化,所以我们就只能使用前0~40 ...

  10. Python3.6下的Requests登录及利用Cookies登录

    利用Python中的Requests模块可以实现Post,Get等发送功能,我以登录某网站为例,记录使用Post发送用户名.密码及图形验证码,以及通过Cookies直接登录的内容. 1.利用POST发 ...