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 ...
随机推荐
- php_公共方法01_传入数组_打印可见信息
function decodeUnicode($str) { return preg_replace_callback('/\\\\u([0-9a-f]{4})/i', 'convert', $str ...
- CENTOS6.4安装lxml失败
环境如下: Centos6.4 Python 2.7.6 pip install lxml 执行上面的命令,有类似下面的提示: src/lxml/lxml.etree.c:188133: error: ...
- [转载]CSS元素的定位position
CSS元素的定位position 属性position 值 描述 absolute 生成绝对定位的元素,相对于 static 定位以外的第一 ...
- hdu 4932 Miaomiao's Geometry(暴力)
题目链接:hdu 4932 Miaomiao's Geometry 题目大意:在x坐标上又若干个点,如今要用若干条相等长度的线段覆盖这些点,若一个点被一条线段覆盖,则必须在这条线的左端点或者是右端点, ...
- jQuery实现发送验证码倒计时60秒
前端HMTL: <div class="form_box"> <div class="line mb40"> <div class ...
- 采用malloc分别分配2KB个人空间,然后,realloc调整到6KB、1MB、3MB、10MB场地,分别这五内存“A”、“B”、“C”、“D”、“E”灌装
#include<stdio.h> #include<stdlib.h> #include<string.h> #include<malloc.h> i ...
- CKPlayer从Cookie里读取上次播放记录的一个demo
<!DOCTYPE html><html><head> <meta http-equiv="Content-Type" content=& ...
- php生成签名及验证签名
<?php /** * 根据原文生成签名内容 * * @param string $data 原文内容 * * @return string * @author confu */ functio ...
- MVC+Bootstrap设计
MVC+Bootstrap) 二 框架设计 文章目录: 一.前言 二.结构图 三.项目搭建 四.代码生成 五.实现接口 六.依赖倒置 七.登录实现 八.最后 一.前言 这个框架是从最近几年做过的项目中 ...
- [译]ava 设计模式之职责链
(文章翻译自Java Design Pattern: Chain of Responsibility) 职责链模式的主要设计思想是为了构建一连串的处理单元,如果阈值满足的话那么这个单元就来处理这个请求 ...