DevExpress 学习使用之 LookUpEdit
我的机器上,Winform 控件中的 LookUp 有1+3 种,在我们国家也被称为 4 种,你们那儿呢?
这 1+3 种 LookUpEdit 分别是 LookUpEdit、GridLookUpEdit、SearchLookUpEdit 和 TreeListLookUpEdit,之所以我用 1+3 种是因为个人觉得 LookUpEdit 是最简单的,也是最基础的一种,其它三个应该都是衍生的。
英文中,Look Up 有查找和向上看的意思,挺形象,先总结一下它们共性部分:
1. 都可以使用数据绑定来快速填充数据,但它们对数据源的指定都是其 Properties.Source 属性,并不直接在其属性内,由此可见,所有 LookUp 其实都是个壳,是个组合控件。
2. 指定了 Source 后,可以不用管其如何显示,因为它们默认工作的就很好
3. 除了 LookUpEdit 外,其它三位点击选定任何一项后,如果不作处理,其返回的就是一个 DataRowView,所以需要人为处理一下,才能显示或是获得正确的选择结果
4. 如果撇开什么性能、开销之类的事儿,选择哪种 LookUp 看起来都很相似,当然,如果比较懒惰可以选择 SearchLookUpEdit,因为它自带一个搜索框,直接就给你提供了搜索功能。
所说各自的特点:
LookUpEdit:我觉得最简单,就像普通的 ComboBox 一样使用即可,将 AutoComplete 设置为 true,配合 ImmediatePopup = true(用户输入字符立即弹出内容窗口)和 SearchMode,即可化身成为专业软件界面。个人感觉 SearchMode 设置为 AutoFilter 比较舒服,不但可以自动过滤不符合输入条件的项目,而且不会“阻塞”用户输入,比较自然符合习惯,不像 AutoComplete,是更智能但感觉很楞的就打断了用户的动作,用户不知道为什么就不能输入了,是坏了、错了还是死机了?
GridLookUpEdit:个人意见,如果没有什么额外查找要求,或是仅用来显示数据较少的二维表格,用它比较合适,因为看名字一目了然,就是个 Grid。
SearchLookUpEdit:个人比较推荐,既能显示数据,又自带查找,个人工具也能瞬间高大上,为何不用。
TreeListLookUpEdit:以 TreeList 的样式显示数据,看起来和 GridLookUpEdit几乎一模一样,因为我的演示数据是 DataTable,所以没有表现出其与 GridLookUpEdit 的区别,其实我想区别也不大,无外乎一个嵌套的是 Grid,一个嵌套的是 TreeList。
如何选用:
LookUpEdit:单列、极简、无格式数据,配合我说的几个属性,用起来顺手看起来专业
GridLookUpEdit:因其嵌套 Grid 缘故可以放入大型数据,但毕竟是 LookUp,个人认为还是避免放入大型数据
SearchLookUpEdit:最推荐,瞬间程序高大上
TreeListLookUpEdit:除非有树形数据,否则跟 GridLookUpEdit 一样,没什么显著用处。
DevExpress 学习使用之 LookUpEdit的更多相关文章
- DevExpress学习01——下载与安装
记得刚接触编程时,虽然实现了功能,但用户界面十分丑陋,老师叫我们美化一下界面,不要千篇一律,当时觉得能够写出来功能就洋洋得意了,不觉得界面丑陋.后来,在程序比赛中,我接触了一种第三方控件,它可以快速实 ...
- DevExpress控件之LookupEdit,ComboBoxEdit
ComboBoxEdit 1. ComBoxEdit没有DisplayMember 和 ValueMember 属性,只能获取显示的值2.当前选定值comboBoxEdit1.Propertie ...
- DevExpress学习系列(控件篇):GridControl的基本应用
一般属性设置 不显示分组框:Gridview->Option View->Show Group Panel=false 单元格不可编辑:gridcontrol -->gridview ...
- DevExpress学习笔记1-ProductsDemo.Win
最近在学习ProductsDemo.Win,有一些体会记录下来,大家分享: 在Contacts模块: 在Private Sub UpdateCurrentContact()过程添加一句:InitInd ...
- DevExpress学习1
为了程序的美观设计,决定用dev控件. 第一步,去官网下载了试用30天的安装包,官网地址:https://www.devexpress.com/,安装完成. 第二步,开始程序下找到DevExpress ...
- DevExpress 学习使用之 SplitContainerControl
无论是 .net framework 自带还是第三方组件,使用 Split 类控件时通常其 Panel 中都会包含多个子控件,在运行时不可避免遇到因改变 splitter 位置或改变窗体大小引起的界面 ...
- DevExpress 学习使用之 TreeList
1. 必须先添加列,否则不能显示任何节点内容 2. 如果是代码添加列时,一定要写明 VisibleIndex = 几,没有这句,不显示 3. 顶级结点用 TreeList.AppendNode 来添加 ...
- DevExpress 学习使用之 Skin
新建了一个XtraForm,设置属性里的皮肤属性却不能实现,群里朋友发过来一个简单的换肤项目 1. 先觉条件似乎是窗体应该继承“public partial class XtraForm1 : Dev ...
- DevExpress 学习使用之 PrintSystem
这是来自群里边的一段,收集起来,碎片知识是很珍贵的. 傷心孤影(2072201) 16:14:41导出excel加标题用PrintableComponentLink小宝(462561442) 1 ...
随机推荐
- MVC4 + EF为Model添加单独的验证属性
可使用以下方式给Model加上相关的meta验证属性,这样实体的验证属性就不会被例如EF或其他工具自动生成的Model所替换了. using System.ComponentModel.DataAnn ...
- Front End Books
Front End Books 记录和推荐一些认为还不错的前端方面的书籍.列入标准: 看过,并觉得值得推荐给大家的. 正在看的,已经觉得不错的,或者听闻别人说不错的. 打算看的,经多人推荐,一致认为必 ...
- C#抓取AJAX页面的内容
原文 C#抓取AJAX页面的内容 现在的网页有相当一部分是采用了AJAX技术,所谓的AJAX技术简单一点讲就是事件驱动吧(当然这种说法可能很不全面),在你提交了URL后,服务器发给你的并不是所有是页面 ...
- 关于SQL Server 2005 的自动远程数据库备份
原文:(原创)关于SQL Server 2005 的自动远程数据库备份 由于项目需要,需要对目标服务器上的数据库每天进行备份并转移,查阅网上的一些帮助,结合自己的实际需要,写了这篇文章,希望对有同样需 ...
- VS2015集成新潮工具4
VS2015集成新潮工具(四) 本课程来源与微软connect视频教程,Modern Web Tooling in Visual Studio 2015 本课程主要讲下当下流行的前端工具 bowe ...
- leetcode第17题--4Sum
Problem:Given an array S of n integers, are there elements a, b, c, and d in S such that a + b + c + ...
- 《Visual Studio Magazine》2013年读者选择奖—软件类
<Visual Studio Magazine>会在每年的下半年向读者发出投票邀请,读者将在28个大类,超过500个开发工具的名单中选出他们认为最好的产品,以票数评出各分类的金.银.铜奖. ...
- JavaScript一个类继承中实现
JavaScript类是默认原型对象继承: var Person = function() { this.name = "people"; this.hello = functio ...
- C++中的左值和右值
左值和右值的定义 在C++中,能够放到赋值操作符=左边的是左值,能够放到赋值操作符右边的是右值.有些变量既能够当左值又能够当右值.进一步来讲,左值为Lvalue,事实上L代表Location,表示在内 ...
- INNO SETUP卸载程序中加入自定义窗体
原文:INNO SETUP卸载程序中加入自定义窗体 [Setup] AppName=My Program AppVerName=My Program v.1.2 DefaultDirName={pf} ...