主要是继承原有TextBox;追加编号内容(ValueText)和显示内容(DisplayText);在编辑完成后查询数据库调出DisplayText(如:名称);并显示在原TextBox中;当TextBox为编辑状态是显示ValueText(如:编号)

当然还可以进一步增强;如:增加对于的数据字典、增加DataRow所有数据(便于开发时根据记录集更新其他组件)等等

运行效果如下图

主要代码:

1.继承组件

public partial class TTextBox : Infragistics.Win.UltraWinEditors.UltraTextEditor

2.定义属性

        private string displayMember;public string DisplayMember { get { return displayMember; } set { displayMember = value; } }private string valueMember;public string ValueMember { get { return valueMember; } set { valueMember = value; } }private int max_Length;public int Max_Length { get { return max_Length; } set { max_Length = value; } }

3.原始原组件事件;并追加代码

 protected override void OnEndInit(){base.OnEndInit();max_Length = base.MaxLength;}protected override void OnBeforeEnterEditMode(CancelEventArgs e){base.OnBeforeEnterEditMode(e);if (valueMember == null)valueMember = "";if (max_Length != null && max_Length != 0)base.MaxLength = max_Length;base.Value = valueMember;}protected override void OnEnter(EventArgs e){base.OnEnter(e);base.SelectAll();}protected override void OnAfterExitEditMode(EventArgs e){base.OnAfterExitEditMode(e);if (displayMember == null)displayMember = "";base.MaxLength = 0;base.Value = displayMember;}

protected override void OnValueChanged(EventArgs e){base.OnValueChanged(e);if (base.Value == null)return;valueMember = base.Value.ToString();//maxLength = base.MaxLength;DisplayMember = GetValue("select Name from Table");            if (DisplayMember == "")valueMember = "";elseDisplayMember = DisplayMember+ "(" + valueMember + ")";}

运行效果如下图:

转载于:https://www.cnblogs.com/DesignIvan/archive/2013/05/31/CustControl.html

编写查询功能TextBox相关推荐

  1. php 文件管理系统_如何编写程序实现图书管理系统的个人图书借阅查询功能

    上节课完成了公共图书库存查询功能. 这节课来完成用户个人信息查询功能. 编写用户个人信息查询功能 首先需要编写一个用户通过IC卡号和密码登录的功能,登录成功之后页面显示用户的信息,包括借阅历史清单以及 ...

  2. pythonsqlite3模糊_Python编写通讯录通过数据库存储实现模糊查询功能

    1.要求 数据库存储通讯录,要求按姓名/电话号码查询,查询条件只有一个输入入口,自动识别输入的是姓名还是号码,允许模糊查询. 2.实现功能 可通过输入指令进行操作. (1)首先输入"add& ...

  3. java webservice ip_通过Web Service实现IP地址查询功能的示例

    实例01 实现一个简单的Web服务访问 本实例将实现IP地址查询接口服务,根据用户传入的IP地址返回IP所在的省.市.地区,实例中将会用到IP地址库用于查询信息,由于数据较多,所以读者可在光盘资源文件 ...

  4. 通过Web Service实现IP地址查询功能

    实例01  实现一个简单的Web服务访问 本实例将实现IP地址查询接口服务,根据用户传入的IP地址返回IP所在的省.市.地区,实例中将会用到IP地址库用于查询信息,由于数据较多,所以读者可在光盘资源文 ...

  5. 查询中接受的主体参数_Apollo入门引导(三):编写查询解析器

    接上篇 -- Apollo 入门引导(二):连接数据源 -- 继续翻译 Apollo 的官网入门引导. 学习 GraphQL 的查询是如何获取数据的. Apollo 入门引导 - 目录: 介绍 构建 ...

  6. 手机号归属地 mysql脚本_示例演示手机号归属地查询功能

    示例演示手机号归属地查询功能(调用webservice接口) 1,新建java项目,创建包 2,点击项目名称创建web service->web service client 3,选择JAX-W ...

  7. python微信公众号翻译功能_自学Python笔记:给微信公众号搭建“成绩查询”功能...

    原标题:自学Python笔记:给微信公众号搭建"成绩查询"功能 期末考试 临近年末,全国各地都在上演一场大戏<期末考试>,考完试无论什么样的结果总想尽快看到自己一个学期 ...

  8. Kotlin实战案例:实现RecyclerView分页查询功能(仿照主流电商APP,可切换列表)

    n实战案例:带你实现RecyclerView分页查询功能(仿照主流电商APP,可切换列表和网格效果) 随着Kotlin的推广,一些国内公司的安卓项目开发,已经从Java完全切成Kotlin了.虽然Ko ...

  9. 尾号限行 API 实现微信小程序车辆尾号限行查询功能

    引言 车辆尾号限行是一个交通出行政策,根据地方交通管理政策,在一周内的某一天,该尾号车辆不允许在规定路段行驶.这种政策不是针对特定道路和特定车辆,是在一定区域内对所有车辆都具有制约能力,而且会不定期调 ...

最新文章

  1. POJ 2723 Get Luffy Out【二分+2-sat】
  2. 设计模式之美:Facade(外观)
  3. Visual Studio Code 1.0正式发布
  4. 批处理命令无法连续执行
  5. 实现一个用户取过的数据不被其他用户取到
  6. Oracle创建表空间、创建用户以及授权
  7. php网页如何做出透明的效果,css+filter实现简单的图片透明效果
  8. Linux 基金会成立持续交付基金会
  9. 在java中转义符 n代表什么_在Java中,表示换行符的转义字符是()。 A.\nB.\fC.n D.\ddd...
  10. jQuery CSS 添加/删除类名
  11. 电脑windows系统动态壁纸装X器wallpaper engine下载资源和使用教程
  12. php展厅控制系统,展厅中控系统详细介绍
  13. Python cmd库的使用
  14. python高级教程-2
  15. Jsoup——抖音视频抓取(二)
  16. vue.js的两个核心是什么
  17. 《那些年啊,那些事——一个程序员的奋斗史》——43
  18. 《设计心理学》学习笔记之设计未来(第四册)
  19. 计算机集成显卡和独立显卡,集成显卡和独立显卡的区别_哪个好
  20. 江西财经大学第二届程序设计竞赛同步赛----E-是不是复读机

热门文章

  1. SURF算法与源码分析、上
  2. AndroidStudio设置背景颜色,字体大小,默认显示行号
  3. 微信7.0.4内测版大更新!漂流瓶彻底成为历史
  4. WiseCloud成为全球首批Kubernetes官方认证平台产品-CNCF官方发布
  5. 阿里云Ubuntu 14.04 + Nginx + let's encrypt 搭建https访问
  6. Linux之samba服务器的搭建及详解
  7. 步步为营(十六)搜索(二)BFS 广度优先搜索
  8. Atom-无懈可击的Markdown编辑器
  9. 开发工具 | git、github使用场景总结
  10. [Unity3D]关于NaN(Not a Number)的问题