文档章节

DevExpress:带按钮的输入框ButtonEdit

北风其凉
 北风其凉
发布于 2015/10/18 23:08
字数 664
阅读 3680
收藏 2

本文为我的.NET控件库DevExpress使用笔记,我的DevExpress版本为13.1

1、控件类型全称:DevExpress.XtraEditors.ButtonEdit

2、控件所在程序集:DevExpress.XtraEditors.v13.1.dll

3、工具箱内分类:DX.13.1: Common Controls

4、控件样式截图

5、在属性管理器中Properties下的Buttons里,可以进入EditorButton集合编辑器设置文本框右侧的按钮。文本框右侧的按钮可以有不止一个,在EditorButton集合编辑器中都可以进行设置。在文本框右侧的按钮,都是DevExpress.XtraEditors.Controls.EditorButton类型的。

6、在每个按钮的Kind属性中,可以设置按钮的类型。按钮类型保存在枚举DevExpress.XtraEditors.Controls.ButtonPredefines中,该枚举包括如下枚举值(共计19个):

  • Close,一个x型图案

  • SpinRight,方向指向右侧的三角形箭头

  • SpinLeft,方向指向左侧的三角形箭头

  • SpinDown,方向指向下侧的三角形箭头

  • SpinUp,方向指向上侧的三角形箭头

  • Combo,同SpinDown

  • Right,同SpinRight

  • Left,同SpinLeft

  • Up,同SpinUp

  • Down,同SpinDown

  • Glyph,图案可由Image属性指定

  • Ellipsis,省略号,三个点,默认图案

  • Delete,一个x型图案,线条比Close要细一些

  • OK,一个√型图案

  • Plus,一个+型图案

  • Minus,一个-型图案

  • Redo,撤销图案,一个顺时针转动最后指向右侧的箭头

  • Undo,重做图案,一个逆时针转动最后指向右侧的箭头

  • DropDown,同SpinDown

其中,当Kind被设置为Glyph时,可以通过设置Image属性来指定图案

7、点击按钮的事件,可以在属性管理器中事件里Properties下的ButtonClick事件中指定

这里面就存在一个问题,如果文本框中放置了多个按钮,该如何分辨出我点的是哪个按钮呢?

后来我发现,ButtonClick函数的传入参数如下:

private void buttonEdit1_Properties_ButtonClick(
    object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)

这里的参数e为DevExpress.XtraEditors.Controls.ButtonPressedEventArgs类型,该类型中有个字段是Button。

public EditorButton Button { get; }

可以在事件中根据Caption、Kinder等属性判断当前鼠标点击的是哪个Button,再执行相应的逻辑。

如在一个包括两个按钮(类型分别是Ellipse和Delete),其中Ellipse类型的按钮用于浏览文件,Delete类型的按钮用于清空选中数据。

一段判断按钮类型并执行相应逻辑的代码如下:

private void buttonEdit1_Properties_ButtonClick(
    object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
{
    if (e.Button.Kind == DevExpress.XtraEditors.Controls.ButtonPredefines.Ellipsis)
    {
        OpenFileDialog openFileDialog = new OpenFileDialog();

        openFileDialog.AutoUpgradeEnabled = true;
        openFileDialog.CheckFileExists = true;
        openFileDialog.CheckPathExists = true;
        openFileDialog.ReadOnlyChecked = false;
        openFileDialog.Multiselect = false;
        openFileDialog.FileName = "";

        openFileDialog.Filter = "所有文件|*.*";
        openFileDialog.Title = "浏览";

        if (openFileDialog.ShowDialog() == DialogResult.OK)
        {
            this.buttonEdit1.Text = openFileDialog.FileName;
        }
    }
    else if (e.Button.Kind == DevExpress.XtraEditors.Controls.ButtonPredefines.Delete)
    {
        this.buttonEdit1.Text = "";
    }
}

END

© 著作权归作者所有

共有 人打赏支持
北风其凉

北风其凉

粉丝 114
博文 498
码字总数 463468
作品 4
朝阳
程序员
DevExpress 控件使用笔记 - Common Controls

这段时间一直在研究DevExpress控件库,本文是我对DevExpress工具箱中分类“DX.13.1: Common Controls”下控件的使用笔记。这个类型的控件都在DevExpress.XtraEditors.v13.1.dll中定义。 分类...

北风其凉
2015/10/26
0
1
DevExpress:带计算器功能的文本框CalcEdit

本文为我的.NET控件库DevExpress使用笔记,我的DevExpress版本为13.1 1、控件类型全称:DevExpress.XtraEditors.CalcEdit 2、控件所在程序集:DevExpress.XtraEditors.v13.1.dll 3、工具箱内...

北风其凉
2015/10/19
771
0
DevExpress:可左右滑动的图片框ImageSlider

本文为我的.NET控件库DevExpress使用笔记,我的DevExpress版本为13.1 1、控件类型全称:DevExpress.XtraEditors.Controls.ImageSlider 2、控件所在程序集:DevExpress.XtraEditors.v13.1.dl...

北风其凉
2015/10/23
1K
0
[干货来袭]DevExpress ASP.NET示例资源最全分享!(二)

为解决大家找资源难的问题,EVGET联合DevExpress控件中文网盘点热门的DevExpress资讯、Demo示例、版本升级及下载,以及各种教程推荐等。更多下载及资讯也可以在DevExpress控件中文网中找到,...

Miss_Hello_World
2017/11/08
0
0
DevExpress v15.1:DevExtreme控件升级(二)

HTML 5/JS控件增强 1.1 无障碍 DevExtreme HTML5/JS控件现在包含WAI-ARIA标记并支持屏幕阅读器。 1.2 字体图标 我们已经改进了图标库并支持将图标作为一种字体,这使您能够瞬间定制图标。此外...

Miss_Hello_World
2015/07/15
0
0

没有更多内容

加载失败,请刷新页面

加载更多

.NET 知识整理笔记

1.Web.Config配置文件的节点操作 在Web.Config中写入 <configuration> <connectionStrings> <add name="conStr" connectionString="Data Source=IUCL8V4Y7NW5IRA\SQLEXPRESS;Initia......

Jokeny
6分钟前
0
0
Spring 声明式注解事务实现机制

Spring中注解事务实现机制 在使用@Transactional 注解管理事务时步骤很简单。但是如果对@Transactional理解不够透彻,很容易出现事务不起作用的情况。所以,在对@Transactional的实现机制要有...

狂奔的熊二
7分钟前
0
0
Fastjson - 详解SerializeFilter,格式化对象字段

遇到一个奇葩场景,维护一个老的程序, 应用换了个服务方. 要切接口. 但有以下问题. 接口逻辑稍有不同 , 需要自己按原接口文档,重组逻辑. 接口字段名,字段类型改动较大. 但还要按原接口文档返回...

ol_O_O_lo
7分钟前
0
0
一个小知识点---关于传递引用参数

如果传入引用参数 在方法内new 对象,其改变外层不可见

职业搬砖20年
12分钟前
0
0
Oracle数据导入导出命令及参数介绍(Linux)

1.数据导出 exp system/123456 file=d:\backup\oracle\oracle%date:~0,10%.dmp owner=system log=d:\backup\oracle\oracle%date:~0,10%.log 2.数据导入 imp system/manager@TEST file=d:\d......

lyle_luo
13分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部