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. ResNet 论文研读笔记

    Deep Residual Learning for Image Recognition 原文链接 摘要 深度神经网络很难去训练,本文提出了一个残差学习框架来简化那些非常深的网络的训练,该框架使得层能 ...

  2. Java设计模式学习记录-建造者模式

    前言 今天周末,有小雨,正好也不用出门了,那就在家学习吧,经过了两周的面试,拿到了几个offer,但是都不是自己很想去的那种,要么就是几个人的初创小公司,要么就是开发企业内部系统的这种传统开发,感觉这 ...

  3. ffplay源码分析3-代码框架

    ffplay是FFmpeg工程自带的简单播放器,使用FFmpeg提供的解码器和SDL库进行视频播放.本文基于FFmpeg工程4.1版本进行分析,其中ffplay源码清单如下: https://gith ...

  4. .21-浅析webpack源码之事件流this-compilation

    上一节生成Compilation实例后,添加了一些属性,随后触发this-compilation事件流,如下: Compiler.prototype.newCompilation = (params) ...

  5. ABP 数据库 -- ABP&EF中的多表、关联查询

    本文介绍一下ABP中的多表查询. 1.创建实体 多表查询,在ABP或者EF中都很简单,这里我们创建一个Demo,一个学生实体.一个学校实体. 学校里面可以有很多学生,学生有一个学校. 实体如下: 学校 ...

  6. WebForm 基础学习

    C/S   客户端应用程序(Client/Server)  客户端——服务器端 两种技术      WinForm       WPF                                 ...

  7. 整数对(hdu1271)找规律

    整数对 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submissio ...

  8. 小希的迷宫(hdu1272)并查集(有点坑)

    纪念我死去的脑细胞们    .....   小希的迷宫 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java ...

  9. 转载 - java中接口的向上转型。和多态性

    发现一篇对接口总结很精简的文章 1.在java中接口就是一个完全抽象的类,跟抽象类一样不能产生对象,但是可以作为对象的引用,可以由其实现类向上转型,它就跟超类一样, 向上转型了,可以很好的利用接口,可 ...

  10. Bash:字符串操作

    参考:http://blog.csdn.net/finewings/article/details/5718133 字符串提取 去掉指定前缀 1. ${varible#pattern}         ...