2016.2.24 利用用户控件和委托完美解决快速选择txbbox
1、首先将tet_box和一个datagridview控件打包成用户控件uC_QuickTxtBox
2、在用户控件中定义执行主窗口的委托函数
3、主窗体中添加用户控件的load事件,赋值
uC_QuickTxtBox1.qrytp = 1; //定义此实例将进行点、线或机场的哪种查询
uC_QuickTxtBox1.myDelegate = butquery_Click; //查询完成后,映射委托执行哪个主窗体的回传函数。若不执行任何后续操作,此行可以省略
//传统委托的写法是: uC_QuickTxtBox1.myDelegate = new UC_QuickTxtBox.BugTicketEventHandler(butquery_Click);
//()中的butquery_Click并不代表是委托函数的参数,而是说明此委托等效于butquery_Click,
//在定义时public delegate void BugTicketEventHandler(object sender, EventArgs e); 的参数才是真正的参数,
//且必须与真实的butquery_Click(object sender, EventArgs e)参数的个数、类型必须一致
//否则会报错 xx函数的重载与委托yy不匹配
4、用户控件中对应的委托
//抽象一个父窗口的事件或函数,参数个数和类型必须与父窗口真实事件或函数一致。
public delegate void AfterQueryEventHandler(object sender, EventArgs e); //对应主窗口butquery_Click事件的参数。
public AfterQueryEventHandler myDelegate; //实例化此委托
5、用户控件查到结果后调用
if(myDelegate!=null) //这句可兼容无论有无回传事件要调用
myDelegate(null,null); //通过委托,映射执行窗体的button_Click事件
2016.2.24 利用用户控件和委托完美解决快速选择txbbox的更多相关文章
- Asp.net用户控件和委托事件
在Asp.net系统制作过程中,门户类型的网站,我们可以用DIV+CSS+JS+Ajax全部搞定,但是一旦遇到界面元素比较复杂的时候,还是UserControl比较方便一些,各种封装,各种处理,然后拖 ...
- C# DataGridView控件清空数据完美解决方法
C# DataGridView控件绑定数据后清空数据在清除DataGridview的数据时: 1.DataSource为NULL(DataGridView.DataSource= null;)这样会将 ...
- 浅尝辄止WPF自定义用户控件(实现颜色调制器)
主要利用用户控件实现一个自定义的颜色调制控件,实现一个小小的功能,具体实现界面如下. 首先自己新建一个wpf的用户控件类,我就放在我的wpf项目的一个文件夹下面,因为是一个很小的东西,所以就没有用mv ...
- ASP.Net用户控件的使用
一.概述: 与WEB窗体页相同,程序员可以使用任何文本编辑器创作用户控件,或者使用代码隐藏类开发用户控件.此外,与WEB窗体页一样,用户控件可以在第一次请求时被编译并存储在服务器内存中,从而缩短以后请 ...
- 网页(aspx)与用户控件(ascx)交互逻辑处理实现
几个页面(ASPX)都使用一些相同的控件,一个文本框,二个按钮(搜索和导出),为了以后好维护,把这相同的部分抽取放在一个用户控件(ASCX)上.现需要处理逻辑如下 搜索事件处理的逻辑在各个页面处理. ...
- 在Winform界面使用自定义用户控件及TabelPanel和StackPanel布局控件
在很多时候,我们做一些非常规化的界面的时候,往往需要创建一些用户控件,在其中绘制好一些基础的界面块,作为后续重复使用的一个单元,用户控件同时也可以封装处理一些简单的逻辑.在开发Winform各种类型项 ...
- C#中,用户控件UserControl里面用Panl加载UserControl,并实现利用委托互相传值
用户控件主窗体结构:左侧树形菜单,右侧Panl: 根据点击的菜单节点,panl里面选择性加载某一个子窗体用户控件,并传值给子窗体: 反之,在子窗体进行相应的操作之后,传值给主窗体,触发主窗体的刷新. ...
- WinForm用户控件、动态创建添加控件、timer控件--2016年12月12日
好文要顶 关注我 收藏该文 徐淳 关注 - 1 粉丝 - 3 0 0 用户控件: 通过布局将多个控件整合为一个控件,根据自己的需要进行修改,可对用户控件内的所有控件及控件属性进行修 ...
- C# 自定义控件VS用户控件
1 自定义控件与用户控件区别 WinForm中, 用户控件(User Control):继承自 UserControl,主要用于开发 Container 控件,Container控件可以添加其他Con ...
随机推荐
- EF Code-First 学习之旅 Fluent API
Mappings To Database Model-wide Mapping Set default Schema Set Custom Convetions Entity Mapping To S ...
- MySQL数据库的安装以及配置过程
首先,下载 MySQL 数据库的安装包:mysql-5.7.17.msi.(百度一下自己下吧) 然后点击这里,啊哈哈哈哈哈哈哈. ----------------------------------- ...
- QT 实现按住鼠标左键点击对话框空白处,拖动对话框
定义头文件 QPoint move_point; //移动的距离 bool mouse_press; //按下鼠标左键 protected: void mousePressEvent( ...
- WPF中如何在文本外面加虚线外框
WPF中如何在文本外面加虚线外框 昨天突然被问到如何在wpf里面给一段文本加个虚线外框,由于有一段时间没玩wpf了,一时还真没想出来,虽然大概有个思路,但是也不保证正确.今天回到家,闲着没事情也就随便 ...
- EF-简化排序
respository.GetPaged<S_Users>(out count, m => m.LoginName.Contains("a"),"Log ...
- javascript测试框架mocha
node测试框架mocha 简单.灵活.有趣,mocha是一个功能丰富的javascript测试框架,运行在node和浏览器中,使异步测试变得更加简单有趣.http://mochajs.org/ 安装 ...
- Get UTI (uniform type identifier) and ContentType
#import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepool { ...
- 在Android中使用实时调度(real-time)
Linux的线程调度策略中有FIFO和RT的实时调度方法,但是在Android中做了限制,普通用户不能修改线程的调度算法为FIFO和RT,必须ROOT用户才能更改.但问题是程序是以普通用户启动和运行的 ...
- 一些蠕虫传播研究的文章——TODO
www.arocmag.com/getarticle/?aid=4e02d91c19b0cced Internet 蠕虫防范技术研究http://www.arocmag.com/article/100 ...
- JavaWeb学习总结(一)JavaWeb入门与Tomcat
一.常见软件系统体系结构B/S.C/S 1. C/S C/S结构即客户端/服务器(Client/Server),例如QQ: 需要编写服务器端程序,以及客户端程序,例如我们安装的就是QQ的客户端程序: ...